Ask HN: What is bad about Homebrew?
9 points
1 day ago
| 5 comments
| HN
I've seen a number of comments characterizing homebrew, the package manager, as bad but it was usually in an offhand way.

The most annoying thing I've come across recently is that one can't downgrade to an old version (unless there's a specific formula). Htop 3.4. shows CPU usage 40x too small (on macOS) and to fix that I can't use brew.

f30e3dfed1c9
1 day ago
[-]
I found all the beer-related terminology -- cask, keg, rack, Cellar, Caskroom, tap, bottle -- annoying and unhelpful and immediately disliked it back when it was new. I did use it a little for a while but not in a long time.

These days I use pkgin, which I like fine. Can't think offhand of when something I wanted wasn't available there. My impression is that homebrew has many more packages available, but apparently not any that I want.

reply
runjake
1 day ago
[-]
It's not perfect, but I like it fine. I definitely like it better than Fink and DarwinPorts, though those may be technically superior.

It's not super simple, but for your htop example, you could probably do something like the following:

  # Create a new tap
  brew tap-new $USER/local-tap

  # Extract the specific version you want
  brew extract --version=X.Y.Z htop $USER/local-tap

  # Install the extracted version
  brew install htop@X.Y.Z
I'm keeping an eye on the unofficial successor by the original author of Homebrew: https://pkgx.dev/
reply
croemer
12 hours ago
[-]
Thanks, that almost worked, needed the following (extra --force tap of core and link --overwrite)

  brew tap-new $USER/local-tap
  brew tap homebrew/core --force
  brew extract --version=3.3.0 htop $USER/local-tap
  brew install $USER/local-tap/cmake@3.3.0
  brew link --overwrite htop@3.3.0
Based mostly on https://www.ericbariaux.com/posts/brew_rollback/
reply
runjake
6 hours ago
[-]
Thanks. I appreciate the correction!
reply
worldsavior
1 day ago
[-]
Annoying CLI; the things called "casks"; the annoying behavior of updating ALL the packages on your system when installing only one program; and bad handling of broken packages.
reply
comprev
2 hours ago
[-]
This tool [0] might help for pinning casks.

[0] https://github.com/buo/homebrew-cask-upgrade

reply
cpach
7 hours ago
[-]
I’ve used it since ~2013. IMHO it works very well. (Have rarely had the need to downgrade anything.)
reply
apineda
1 day ago
[-]
I've been a light user for ~5 years maybe? Never really had issues, it's convenient, if a little obtuse relative to say npm install -g.
reply