Live data from Hacker News

Homebrew 3.0

brew.sh

141–150 of 516 posts

Re: Homebrew 3.0

#141
post #3

I can’t even begin to imagine how much value Max Howell (creator of Homebrew) has added to the world. It’s the recommended package manager at every place I’ve worked at and saves so much headache. I use Linux at home and package managers like AUR are great, but macOS is where the users are.

Contrarian view here: brew fucking sucks. It’s the worst package manager I’ve used for doing random unwanted updates at odd times. Someone else would have filled the void if homebrew hadn’t shown up, and it would hopefully have been better. I hate that brew is good enough that it’s got some kind of local maximum such that there’s no replacement forthcoming. There, I said it.

I am cool with constructive criticism, but you do realize brew is free, right?

If you are not happy with open source, you have a couple of options:

- build your own brew

- brew is open source, so you can make contributions to improve

- pay for something like brew (though probably not an option for brew)

Have you done any of the above before complaining? I am guessing - no. Otherwise, say "thank you" and move on, my friend.

Re: Homebrew 3.0

#142
post #130

Earlier quoted context omitted.

Contrarian view here: brew fucking sucks. It’s the worst package manager I’ve used for doing random unwanted updates at odd times. Someone else would have filled the void if homebrew hadn’t shown up, and it would hopefully have been better. I hate that brew is good enough that it’s got some kind of local maximum such that there’s no replacement forthcoming. There, I said it.

What do you mean by random unwanted updates? As far as I know, the only way to update is by running brew upgrade.

Personally; only issue i tend to have is that when I install X, it breaks Y forcing reinstallation of ~everything. What should be a small install ends up taking 30m of cleanup.

Entirely likely it's user error on my part; but also problem I haven't really had with other 'nix package managers.

Re: Homebrew 3.0

#143
post #21

Been a MacPorts user for years and I know nothing about Homebrew. To those who tried both: should a software engineer switch to Homebrew? MacPorts has its own way of dealing with dev tools and framework versioning. E.g. you can have multiple versions of complex products like PHP or MySQL at once. You can even have a GCC package for a specific target arch as a separate ports package. Does Homebrew allow these things?

Here’s a blog post from April 2019 on package managers on macOS. [1] The author, saagarjha (who also comments here regularly), switched from homebrew to MacPorts. A more current update to this post would probably be more helpful. In my limited experience, I’ve tried homebrew a few times, but found it a bit cumbersome with the “no sudo” requirement. [1]: https://saagarjha.com/blog/2019/04/26/thoughts-on-macos-pack...

This is very interesting, and maybe sheds light on why Google decided not to hire Max. There seems to be some consensus that MacPorts has the better architecture, while Homebrew has been better at responding to users, even according to Max himself.

For Google, it's likely the former is more important than the latter for a lot of their projects. An architecture that doesn't scale or doesn't always do the right thing or sometimes messes up data, can be catastrophic at the scale of Google.

Re: Homebrew 3.0

#144

Earlier quoted context omitted.

Contrarian view here: brew fucking sucks. It’s the worst package manager I’ve used for doing random unwanted updates at odd times. Someone else would have filled the void if homebrew hadn’t shown up, and it would hopefully have been better. I hate that brew is good enough that it’s got some kind of local maximum such that there’s no replacement forthcoming. There, I said it.

The usual non-productive rant. What prevents you to do it better then? What prevent you from forking it? Sharing improvement ideas? Contributing to the project? "It sucks" doesn't help anyone understand your frustrations and does not serve the message you're trying to share (let this one be valid or not). Also, as everything that is open-source/free: if you hate it, don't use it, that's it. And let the people who app…

Not parent, and I'm not going to say it sucks, the project takes a lot of work from a lot of people and I ain't the one pissing on other people's work, it definitely could use some improvements syntax wise though, What was it, brew install? Brew cask? Oh , now is brew cask install... or was it brew install --cask?

I get the analogy, but being a package manager, but was it really that bad to use 'brew install', 'brew update', and 'brew upgrade' for everything?

And it's true that it is a little frustrating at times when you don't use it for a while, you 'brew install xx' and wait 4 minutes until "Updating homebrew" finished with its dozens loops between shells, ruby etc doing its stuff (which I assume is refetching repos, but couldn't know it from the output)

I use it because it's the most common thing for mac, but I miss APT and DNF everytime I use it, not going to lie

Re: Homebrew 3.0

#145

Earlier quoted context omitted.

> found it a bit cumbersome with the “no sudo” requirement This is one of the few features I do love about Homebrew. Does MacPorts have a "no sudo" mode or does it just let all packages run rampant on your system?

My understanding is that the whole reason for running the outer commands as sudo is so that the inner build/install commands can be run in a far more restricted environment. Because brew runs as your own user, every build has access to your entire home directory, the whole homebrew folder, etc. It's nice in principle to not have to "trust" any of homebrew with sudo, but in reality, the trust surface area is far large…

> inner build/install commands can be run in a far more restricted environment

As I seem to remember it, homebrew rankles if you use sudo but also complains if you’re not an admin account, which struck me as ironic and irritating all at once, and means that xkcd isn’t quite as relevant.

Re: Homebrew 3.0

#146

Earlier quoted context omitted.

I feel like it would be a /tremendous/ amount of work to install packages -- which often have dependencies -- asynchronously. When is this really a problem, anyway? You should probably not have something like 'brew update' scheduled to run periodically, as then a broken package could break something unexpectedly. It should really only be run when you're ready to check for broken things, which means you can also sched…

Homebrew now runs `brew update` before every `brew install`, no? That's how it gets in the way, you just wanted to install a thing, and now you are stuck waiting for `brew update` -- which I feel takes longer than it used to? (You also may be confused between `brew update` and `brew upgrade`. I know I often am!)

Running `brew install hello` triggers `brew update` automatically unless the environment variable HOMEBREW_NO_AUTO_UPDATE is set:

echo export HOMEBREW_NO_AUTO_UPDATE=1 >> $HOME/.zshrc

I do not think it was a wise decision to enable auto update on `brew install` as long time users expect `brew update` and `brew install` to be two separate steps (as it was for years) and because Homebrew no longer operates like `apt` and other package managers.

Looks like it was changed in 2016: https://github.com/Homebrew/brew/issues/288

Re: Homebrew 3.0

#147
post #21

Been a MacPorts user for years and I know nothing about Homebrew. To those who tried both: should a software engineer switch to Homebrew? MacPorts has its own way of dealing with dev tools and framework versioning. E.g. you can have multiple versions of complex products like PHP or MySQL at once. You can even have a GCC package for a specific target arch as a separate ports package. Does Homebrew allow these things?

Have never used MacPorts, but based on your comment, and a few of the replies, I may give it a try. Homebrew is quite painful in many ways, particularly when managing multiple versions of a package (MySQL & PostgreSQL especially has had a lot of issues for me). On the other hand, what I will say in favour of Homebrew is that its popularity does make life much easier as there's so much software available on it. Even v…

This Homebrew MacPorts discussion is giving me a MySQL Postgres vibe.

The former is more popular and easier to get started with and bigger community, but the latter is higher quality and better designed.

Re: Homebrew 3.0

#148
post #138

Earlier quoted context omitted.

The usual non-productive rant. What prevents you to do it better then? What prevent you from forking it? Sharing improvement ideas? Contributing to the project? "It sucks" doesn't help anyone understand your frustrations and does not serve the message you're trying to share (let this one be valid or not). Also, as everything that is open-source/free: if you hate it, don't use it, that's it. And let the people who app…

> What prevents you to do it better then? What prevent you from forking it? Sharing improvement ideas? Contributing to the project? I think ~everything he stated is generally assumed true. I use Brew installed software every single day, and appreciate it. That doesn't put it above criticism though.

There is no criticism in their statement though, just a generalized opinion/rant that doesn't point out single issue and is factually inaccurate.

Re: Homebrew 3.0

#149
post #3

I can’t even begin to imagine how much value Max Howell (creator of Homebrew) has added to the world. It’s the recommended package manager at every place I’ve worked at and saves so much headache. I use Linux at home and package managers like AUR are great, but macOS is where the users are.

Wouldn't we all just be using MacPorts/Fink, like we were before Homebrew?

I still only use MacPorts.

Re: Homebrew 3.0

#150
post #3

I can’t even begin to imagine how much value Max Howell (creator of Homebrew) has added to the world. It’s the recommended package manager at every place I’ve worked at and saves so much headache. I use Linux at home and package managers like AUR are great, but macOS is where the users are.

Contrarian view here: brew fucking sucks. It’s the worst package manager I’ve used for doing random unwanted updates at odd times. Someone else would have filled the void if homebrew hadn’t shown up, and it would hopefully have been better. I hate that brew is good enough that it’s got some kind of local maximum such that there’s no replacement forthcoming. There, I said it.

When I get angry about brew sucks I always remind myself there is npm.
Post reply on HN