I installed OpenSolaris on my laptop this week, and have found it to be quite usable.
I was poking around on opensolaris.org and ran across documentation for making packages for the IPS system.
In particular, I found this Hello World of package rolling. Except that…it doesn’t really work. And if you are a Linux guy on OpenSolaris, you might be scratching your head with how to fix it. After googleing around and reading a few man pages the fix turns out to be simple.
The first few commands they want you to run are
And those will complete without feedback, however when you actually go to use that repo later, you will find it not there.
Looking at svcs shows us it’s in maintenance mode:
That’s no good, it should say online. So pop open the log and have a look:
You will see something like:
The take away here is the publisher.prefix jazz. Gotta have that, or else the service won’t start. Easy fix:
Finally:
That should do the trick.
If you decide to go ahead with trying to build Midnight Commander, there will be other problems with the include file, but you will see what they are and be able to sort them out. After I got this figure out, it was pretty simple to see what else was wrong simply by trying to complete the steps.
Wow, OpenSolaris works so well now! In the old days of Solaris, making a package required you to hand-edit a binary file by poking the spinning platter with a magnetized needle. This is so much better!
I know you are kidding, but one thing that I do agree with is that from a Linux Admin perspective the Solaris patching/packaging system always seemed overly complicated and dodgey.
There are arguments to explain that, but perception is reality for folks, and I think it gave Solaris packaging a bad name.
After I ran through that tutorial I rolled up rlwrap as well to see if what I did above got my head around it all, and my honest opinion is that IPS is pretty well done.
After some further investigation, the submission process to get a package into /contrib requires a spec file (that is largely (totally?) rpm compliant) that you don’t actually build with those directions, so that was slightly confusing at first. After a day to think about it though I think it makes sense.