Making MacOS X usable
12 years, 4 months ago
Luckily, MacOS X is based on some kind of BSD, in other words: it is a Unix system. It even comes with X11. However, as a desktop system many tools I like and need aren't present. I already had an ancient version of Darwinports running since 10.2. That old installation was terribly broken, though, and almost nothing compiled anymore on 10.4. Thus, I removed it and started again. There are several alternatives available, two of them being based on (Free)BSD ports, and one on Debian packaging.
You think Debian Stale
Stable is old? Wait till you see Fink. With every new version of MacOS X a new version of Fink comes out, but apparently based on a very old version of Debian. Virtually no updates are available in between. No, I'm not going to upgrade to 10.5 just to get a slightly newer version of Fink. It won't perform very well on my PowerBook G4 anyway. At least they provide binary packages. However, those were far too old to compile gspdrive.
Yes, there is a version of Gentoo available for MacOS X. The description on how to bootstrap it is very good, with only one minor issue (I think it is the automake-wrapper package that has to get selected by prepending the port category.) It is a bit annoying, though, that you have to compile the same packages from the system selection three times during bootstrap. Yes, that is a design concept of Gentoo, however on a 1 GHz PPC system with only 512 MB RAM and a 2,5" laptop disk drive quite unnerving.
Everything works well until you have want to compile an X11 application. Some required X11 libraries (that aren't even provided by the system X11) are masked and I wasn't able to unmask them. At least not by following the documentation of emerge. Apparently, it doesn't work with prefixed portage. What a pity, Gentoo has the most current packages of all three solutions.
Macports is the new name of Darwinports after the Darwin project close down. It works very well, if you know that you need to have the most current version of Apple's XCode, including the X11 SDK, and should have the last update of X11 for 10.4. Additionally, whatever you do: be very careful to avoid the installation of Macport's on libX11. The port is not complete, for example libXext is missing. Some X11 applications may work, but others are linked to both MacOS' native and Macports onw X11 libraries. You will get a NULL pointer dereference in libX11 called from libXext on start of those programs. It took me two days to find out what's wrong. Install only the x11/xorg-proto packages (those are safe)
What is missing indeed is some meta-package for X11 which provides the appropriate pgk-config definition files for the non-proto elements of the native X11 installation. These should have been provided by Apple, but unfortunately aren't. Apple's X11 is quite outdated anyway (it already was when Tiger was released), expect to manually install some newer versions of libXcursor and libXfixes.
Thanks to Macports I now have all my favourite tools back, including konversation and gpsdrive.