Hacker News new | ask | show | jobs
by cal2 4261 days ago
I find it very mildly ironic that the author is comparing these "ancient" versions to MacPorts. Am I naïve, or do the overwhelming majority of OS X developers use Homebrew nowadays? I've always thought Homebrew to be much more robust than MacPorts. However, I've never actually used MacPorts heavily (and probably never will).
5 comments

There is a tool we use at work (rpmbuild, I believe) that's not available via homebrew and only through macports. It's a nightmare, because if you install macports, it interferes with brew (or at least, brew will complain a lot). I've taken to running a VM in lieu of macports.
Why not just make your own formula?

The format is really simple and powerful.

https://github.com/Homebrew/homebrew/blob/master/Library/For...

More complex example:

https://github.com/Homebrew/homebrew/blob/6a72fa26aa49ee5c2b...

Edit:

If that's the only reason you can't use homebrew just, you can just tap another cask with it in there(or whatever they are calling that process).

https://github.com/avalanche123/homebrew-rpmbuild

Hah, that sounds really, really painful. Wouldn't you take to finding a way to compiling it yourself or committing a Formula for it instead of installing MacPorts? But if a VM works, don't fix what isn't broken, I guess. (Biochemistry is my day job, so forgive me if I'm missing an obvious detail of full-time development).
Most developers I know who use OSX use brew; fink used to be the big thing, then macports. I know for some certain packages, macports is still preferred.
I don't use any of the extra package managers for OSX. I'd rather let Apple manage the tools available in OSX. If I need to do work where I find the command-line tools on OSX lacking, I'll end up working on a remote server or use a local Linux VM.

I try to not muck around with the base installs too much - it makes it too difficult to migrate between machines.

You should look into homebrew[1] if you haven't already. It installs everything in /usr/local and does not mess with the base install. To migrate between machines you can do something as simple as brew list > brew.txt

[1] http://brew.sh

Disclaimer: I heavily contribute to Homebrew.

Homebrew actually merged in 4 unique bash patches in 6 days after Shellshock broke as well, and forced all users to recompile to ensure that hole was closed on our end. The author of this article would have probably been best checking both MacPorts and Homebrew, and potentially Fink as well.

Every developer I know in SF uses Homebrew, never seen anyone use MacPorts.
I used MacPorts way back in the day; Homebrew is about a gazillion times better.
In what way(s)?
It's like death by a thousand cuts, only in reverse -- homebrew is lovely crafted with a lot of attention to detail, so it just tends to work pretty well in practice, which was not my experience with MacPorts.

Another nice thing is they try to use the already by-default system-installed versions of libraries whenever possible -- pretty much the first thing that happens when you install any macport is it installs a gazillion dependencies that just mirror what's already on the system. (Or at least it used to be this way; keep in mind my macports knowledge is out of date!)

I also really like that in brew formulas are just ruby files, the package update mechanism is just git pull. It's also super-easy to add your own packages, and tap 3rd party sources for packages.

I do run into trouble sometimes, but it's usually easy to fix, and it happens less often than with other package managers I've used over the years.

(Sort of a taste of why it's nice: Simple things you're likely to want to do are simple:

Q. What packages do I have installed? A. "brew list"

Q. What packages are out of date? A "brew outdated"

Q. What's the homepage of package Foo? A. "brew home foo" (opens in browser)

Q. I need to modify the formula for Foo... A. "brew edit foo"

Etc.)

Hard to explain exactly. The UX is just a lot better and more intuitive. It seems to be more reliable. It doesn't require root privileges to install things, which can be good or bad depending on your use case. I think it makes sense on OS X machines.
IMO, interface wise. Also, I think the way they handle installation using linking is actually quite elegant and accessible.

I wish more systems utilized FS tricks instead of proprietary DB's / manifests etc.