Random Bits and Pieces: MacPorts are Fatally Flawed gives a good list of reasons why MacPorts sucks. I wanted to upgrade the Gimp to the latest and greatest, and I put the wrong flag into the upgrade command and it’s taken all damn day and upgraded nearly every port I had, so far, except the Gimp itself. Ports I had forgotten I ever installed. Compiling, compiling, compiling.
And I didn’t *know* I’d screwed up because sometimes even when you do everything *right* it goes nuts like that.
The big Macports thing is: you compile everything yourself. This gives you great flexibility if you want some unusual variant of a program. But the 95% of the time that you don’t, that you want a standard version of the program just like everybody else’s… tough. You’re compiling it yourself no matter how long it takes.
It’d be nice if you could just download binary packages from a central repository like you can with most Linux package management systems, and not have to compile them all yourself. It used to be possible to do that with fink, an alternative to macports, but in doing so you only got the “stable” (read: ancient and crusty) versions of the packages. For the “unstable” (read: created this millennium) versions, you had to compile them yourself, and if you wanted *any* unstable packages, you pretty much had to use all unstable packages… and fink’s set of packages is smaller and less up-to-date than macports’s, so you were screwed.
Now, when everything goes right with macports, it goes *really* right. You can install a very up-to-date version of the Gimp, with a proper Mac application bundle, with some of the coolest new plugins (liquid rescale, RAW support via ufraw) and with the ability to access a wide variety of scanners via xsane, all built in. That’s exquisitely cool.
But when things go wrong, there’s not much you can do about it, and the hassle you have to go through compiling even when things are going right is a complete pain. This ain’t Gentoo, kids. It’s a staid operating system for people who don’t want to invest the time and pain that a true open source operating system demands. Does it have to be this way?
Guess it does.
You know, I don’t run into this kind of stuff with Linux anymore. Maybe it’s time to upgrade? ;)
What you want is Fink, but the big flaw of the binary approach is that it takes much more manpower and storage space. Therefore, it’s not really viable IMHO.