Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Good piece.

Homebrew is certainly "opinionated" and, as the article says, "abrasive".

I recently had one of those upgrade chains: new iOS needs new Xcode, new Xcode needs new OS (Mojave), new Xcode and OS need new Boost. All fine up to this point.

I'd installed Boost via Homebrew. So, fine, brew upgrade boost.

A bunch of stuff scrolls past... holy ---- it's upgrading Postgres?

Oh great. Now a whole bunch of work I have stored in a Postgres database is inaccessible. No problem, Homebrew apparently has a Postgres upgrade script now.

Except it wouldn't work, complaining "no upgrade path" from PostGIS 2.4 to 2.5.2; and Homebrew wouldn't install both at the same time. Eventually, after much experimentation, I found Postgres.app came with all the right versions, allowing me to pg_dump it all out.

But my word... while trying to figure this out I spent hours looking through the issue tracker, and the state of it. Endless snark about "we don't support old versions". Fun like this: https://github.com/Homebrew/brew/issues/5675#issuecomment-46...

It's a good tool, just don't expect any support with it, ever. I kind of feel that Homebrew's slogan should be "Homebrew locked as resolved and limited conversation to collaborators".



Yup. Installed something, which installed a new version of readline, which caused the old version to become garbage collected despite still being in use by other things I've installed in the past. I'm still finding things that don't work anymore due to a dylib being gone, and god help you if you're running an older OS version that's not supported by a core dependency (hello, qt).


That's why I always `brew pin <formula>` I don't need Homebrew to update (although, sometimes it still does). So, not a fully perfect solution… but the best I can have with the current state of things.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: