3 ms·
Can someone link me to an article that explains exactly what is so terrible about Macports? I often hear Linux users moan about how awful and confused and broke
by mechanical_fish 18y ago
Can someone link me to an article that explains exactly what is so terrible about Macports? I often hear Linux users moan about how awful and confused and broken Macports is. But, as a web developer who uses Ruby, Apache, MySQL, and git via Macports, I've never noticed any trouble. (A few years ago Macports tended to lag the latest versions by a little too long, but that seems to have cleared up as programmers migrate to the platform.)
My working assumption is that these complainers must be heavy-duty C programmers, or some other variety of coder that uses a completely different set of tools than I do. Or that they maintain some older codebases which link against older, incompatible versions of various libraries, so they need to install multiple versions of half a dozen libraries and then carefully control how the linking is managed. Or they're former Gentoo users who are completely obsessed with the minutiae of how their tools are being compiled and want to be able to tweak their compiler optimizations on a fine-grained level.
Or maybe I just don't understand Debian well enough [1], and if I did I would fall in love with its build system and spend all my working life in a Linux VM.
---
[1] I mean, I maintain Ubuntu servers, but that doesn't require a lot of understanding of the build system. By and large, aptitude or apt-get just work.
- moe 18y agoBy and large, aptitude or apt-get just work. That's the difference. On OSX they don't. And fink is a poor substitute.
- cstejerean 18y agoPlease explain. What doesn't work? I've used MacPorts over and over again for the past 2 years without any problems. One of the few annoyances is that MacPorts will install copies of software that already exist on the system, but that's not really a big deal.
- evgen 18y agoI use macports quite heavily on my box and while I think it is generally a good system I have a few complaints. [I will add the caveat that it has been a long time since I used apt and similar systems so some of these complaints may also exist for the alternatives...] For starters, ports are frequently out of date. It has reached the point where I am maintaining my own local macport sources tree and hand-rolling portfiles for about 50 packages that I care about and need to be up to date. Secondly, the macports system does not deal well with versioned dependencies. If X depends on a version of Y that is at least rev Z there is no way to express this. You end up just saying that X depends on Y and if there has been an update to Y (which you don't particularly need/want) you are going to get it updated if you update X; this leads to a lot of wasted time for me when some app depends on something like gtk and I end up watching the system pull in the new rev of gtk I don't care about and updates to five other X11 packages. The last minor annoyance is that the tcl scripting system does not handle recursive directory copies well (e.g. copying a doc dir or data dir that has multiple subdirs) so you end up using a recursive mkdir & copy * pattern which will then choke if one of the sub-sub-sub dirs is an empty directory. Overall, I like the system and use it quite heavily, but it does have some warts.
- moe 18y agoWell, evgen already provided evidence better than I ever could. My general take would be: The most advanced binary package manager in existence is apt-get. The most advanced build dependency manager is portage. Both have evolved over many years (apt celebrated 10th birthday just recently) and are at the core of their respective distros. MacPorts and fink, on the other hand, are afterthoughts, somewhat akin to strapon-dildos. Fink at least builds on proven technology, MacPorts reinvents the wheel altogether. Neither has performed convincingly for me over the longer term. I was regularly confronted with outdated packages, broken builds or other screwage as soon as I left the beaten path of the few most popular packages. The package situation may have improved recently (my expirience is from 6 months ago) but the parallel universe, second userland issues are inherent. It's just not possible to match the real thing™ by piggybacking a package-manager on top of a system that wasn't designed for it. Even when the package manager is as good as apt.
- colomon 18y agoI'm with you -- I'm a developer who switched from Windows to OS X last fall, and Macports has worked wonderfully well for me. As to the overall article, I don't know, maybe I'm just never given Linux a proper chance as my main development machine (I do have three headless Linux boxes in the basement that get heavy use), but OS X seems to have 99% of the power of Linux while being drastically more user-friendly. It's like Emacs versus TextMate -- sure, Emacs may be marginally more powerful, but TextMate has more than enough power for anything I've actually tried to do, and incorporates the last 20 years of user interface design and practice, too.
- papaf 18y agoCan someone link me to an article that explains exactly what is so terrible about Macports? I'm using Macports at work and Gentoo/Ubuntu at home. I generally use the same packages on all machines and have been using the same setup for about 3 years. I've never had a problem with Gentoo and Ubuntu in this time but I've hit several showstoppers with Macports. Just in the last two weeks a collegue has had problems with several ports failing to download because the location of the source distribution is out of date. I respect what the macport maintainers are doing and have been grateful to them for fixing bugs. However, the experience of using and downloading packages doesn't compare. I suspect that Apple are part of the problem because they aren't in the business of providing a nice platform for Unix developers. One simple example -- I use macports gcc-4.3 but can't debug because a corresponding gdb isn't available. Somebody in our office just chose a PC over a Mac because the Linux (specifically Ubuntu) experience is better when working with open source packages.