Live data from Hacker News

Ask HN: Best Alternative to Homebrew in 2021?

news.ycombinator.com

271–280 of 314 posts

Re: Ask HN: Best Alternative to Homebrew in 2021?

#272
post #84

Earlier quoted context omitted.

Wow, terrible misfeature. Why is that the default? I could maybe understand it if it were just dependencies, but upgrading everything is insane.

It doesn't upgrade everything. It upgrades dependencies and dependents of those dependencies (which, admittedly, can feel like everything). It does this because the alternative is sometimes breaking things. A "breaking things without this example": - you want to install something that depends on `readline` - the binary package for the thing you want requires the latest `readline` - this upgrades `readline` on install…

I see. That makes sense. Seems like the documentation for that environment variable could use some work, unless this behavior and the reasons for it already exist elsewhere. Happy to submit a PR if needed. I do try to `brew upgrade` at least once a day, so that probably softens the blow of these automatic upgrades and explains why I haven't run into many problems with them.

> the binary package for the thing you want requires the latest `readline`

Have you considered trying to install the latest version of the thing that would be satisfied with the `readline` you already have installed (if it exists), or presenting the user with a choice on whether to upgrade or abort the install?

Re: Ask HN: Best Alternative to Homebrew in 2021?

#274

Homebrew project leader here: I hope you're able to find a package manager that better fits your needs and I'm sorry that Homebrew is not currently doing so. --- Homebrew upgrades dependencies and dependents of those dependencies (which, admittedly, can feel like unrelated) on installation and upgrade. As mentioned in other comments, you can customise this behaviour with `HOMEBREW_NO_INSTALL_UPGRADE` or `HOMEBREW_NO_…

homebrew is the BEST!

Re: Ask HN: Best Alternative to Homebrew in 2021?

#275
post #191

Earlier quoted context omitted.

Yes, agreed. Someone asked if there can be a progress bar on Homebrew. Instantly shutdown the thread. Homebrew is old and it needs to be replaced. It has served its time.

> Homebrew is old and it needs to be replaced. It has served its time. You are more than welcome to build your own alternative. Homebrew is open source and volunteer run. I'm sure there is a very valid reason requests like this get shot down. No wonder open source maintainers hate dealing with people like you. http://antirez.com/news/129 https://news.ycombinator.com/item?id=12000746 https://github.com/kossnocorp/etiq…

I don't hate it, I just think there is room to improve. Also, no need to accuse me of not understanding open source development. I am thankful to you and others, at the same time it is I think OK to say it needs to improve. Although, I believe like a lot of technology pieces that sometimes it is not worth improving - just start from scratch. There is a lot of baggage with Homebrew.

Re: Ask HN: Best Alternative to Homebrew in 2021?

#276
post #255

Earlier quoted context omitted.

> No, the problem is that Python's packaging system (like Homebrew's!) was created without adequate reference to prior art What's a good example of prior art that Python might have considered in its design? This whole discussion is super interesting to me and I'd like to read more on better examples of dependency management.

> I'd like to read more on better examples of dependency management. I'll answer this before we do some Python history. Since there are a range of paradigms, if you really want a good sense of the main ways things are done and the tradeoffs involved in mature systems, take a look at: dnf/RPM as it's done on current Fedora, Gentoo Portage, Guix, Cargo from Rust, Flatpak, macOS' .apps, and Distri. Each of those represe…

Thanks for taking the time to write this out!

Re: Ask HN: Best Alternative to Homebrew in 2021?

#277

Earlier quoted context omitted.

+1 I love homebrew. I just set up my new M1 Max machine and half of the setup work was just brew commands to install cli stuff and casks <3. It's such a joy to not need to go to a bazillion websites to download dmgs

did brew leaves from your old machine not hey you a transferrable list of packages?

Every time I setup OS X I like to go through my osxsetup.sh bit by bit to see if there’s anything I didn’t use, change or update. Takes a little longer but it’s nice to take that time every couple years I go through it

Re: Ask HN: Best Alternative to Homebrew in 2021?

#278
post #101

Earlier quoted context omitted.

I also use Nix, and agree with these caveats. My personal experience is that it can be hard to initially set up Nix, but once you do, it's rock solid. It's particularly great for sharing config across machines. Here's config for my personal dev environment for instance: https://github.com/mjhoy/dotfiles/blob/main/nix/nixpkgs/conf...

I tried Nix while ago when NixOS made news in HN. You are right, it is difficult to set it up. Eventually I give up on it and tried to remove Nix from my macOS, let say it is difficult to remove Nix as well. I tried their command line to remove Nix and it didn't remove it even with sudo. Nix been sitting on my macOS for a month since it couldn't remove it completely. I realized I just have to go to Disk Utility to di…

Hm, that's a good point.

Removing Nix is easier on operating systems where root is root (normal Unix-likes without a lot of filesystem-related security policies enabled). Nix only uses a separate APFS volume on macOS because Apple disabled writing to /.

The way that affects the uninstall process should be documented.

I spotted some people who've recently worked on Nix's install scripts and uninstall procedure elsewhere on the thread. You can file an issue if you think they'll miss your comment :)

Re: Ask HN: Best Alternative to Homebrew in 2021?

#279

Earlier quoted context omitted.

`nix-env` is an imperative command, whilst writing a .nix file is declarative. In particular, the latter can be managed using git, e.g. here's mine: https://github.com/chriswarbo/dotfiles/blob/41c5c4643845f437... That's actually over-complicated, since I used to use nix-darwin and haven't bothered to un-pick it yet.

You could use nix-env to install the file with `nix-env --install --file default.nix` rather than using nix-build + symlinking the result. What are the advantages of just nix-build, and adding the result/bin/ to path? Arguably, `nix-env --install` modifies the underlying profiles which manage symlinks. (nix-build + add to PATH is imperative invocation; but `nix-env --install` is and imperative invocation with a state…

`which -a` and `realpath` are your best friend when you're dealing with a multiuser package manager! Together, they make it easy to figure out if a package comes from your user profile, the default imperative profile, the system profile, or a transient shell profile

Re: Ask HN: Best Alternative to Homebrew in 2021?

#280

Earlier quoted context omitted.

Yes, agreed. Someone asked if there can be a progress bar on Homebrew. Instantly shutdown the thread. Homebrew is old and it needs to be replaced. It has served its time.

> Homebrew is old and it needs to be replaced. It has served its time. Counterpoint: I've spent serious time (years) with, oh, six or seven package managers, in a couple decades of using package managers. More if you count Flatpack and stuff like that. Brew is my favorite, all-around. Package selection is incredible. Stability is excellent. It's a little slow and I think defaulting to updating the package list damn n…

> I've never forgiven RPM-based distros for all the time I lost to RPM hell over the years, and for going so long with worse CLI tools than apt.

apt and dpkg are way behind dnf and rpm these days, both in terms of the structure of packages and the interfaces of the high-level CLI tools

What do you like best about Homebrew?

Post reply on HN