On what planet is is homebrew better than Linux package managers? I agree with many of the other items in these lists, but this makes literally no sense to me. Homebrew is probably one of the worst things about doing dev on a mac.
On what planet is is homebrew better than Linux package managers? I agree with many of the other items in these lists, but this makes literally no sense to me. Homebrew is probably one of the worst things about doing dev on a mac.
Apt, more often than not, acts as a gatekeeper for the latest version of whatever software packages I'm trying to install. I end up just having to adding various libraries and repos to my sources list to get the version I need, or go to an outside dependency manager like gvm, sdkman, etc which is basically homebrew anyway.
Homebrew is for devs that need to get shit done, apt is for computer scientists that love the tool more than solving problems with a tool. For the record, I'm on both linux and mac and there's plenty of upside and downside to both.
On a rolling distro (e.g. using pacman, or say yast2 and others for sake of argument) you typically ship the header files included with the libraries, so that you don't need multiple versions of the same library installed. On Debian/Ubuntu, however, it will always end up with that mess of dozens of versions of the same library because all PPAs are somewhat outdated and used different versions of specific libraries once they were published.
And, invariably, for any problem the one true combination is different.
- You should use the oak box set of Forkuntu 12.4, no problems with forks there.
- Yes, but it lacks any spoons
- For spoons there's always Spoontoo.
- But... I want both spoons and forks...
- For that you can always tweak a few dozen unrelated work orders, menus and item descriptions in Sporkian. But that will only work witn Sporkian unstable, and needs a special tablecloth.
- Okay... What about knives?
This is not a Linux issue - wherever you have different options and use cases you'll find different recommendations depending on what people are trying to achieve.
Either that or well, they'll simply ignore the noise of a user that doesnt give a damn about updating anything - so the user would not receive any potential patch anyways.
If you decide on choosing a specific distro, you should know what you're choosing. If what you are complaining is too much choice, then maybe MSDOS 1.x is the best operating system for you?
The beauty of Linux is customization. If you don't agree with that, then stay on MacOS. No harm done.
But if what you're complaining about is that you lack the skills to understand and investigate - without having paid anyone anything - then honestly, I think you are an ungrateful user that nobody should help out because it's a waste of (everybody's) _free_ time.
Be nice and maintainers will be nice, too. Be cooperative and they'll be cooperative as well.
Indeed. And when that distro is MacOS suddenly HN is up in arms about how "not understanding why developers are chosing it".
It's a distro policy issue, not a package manager issue. There are rolling distros using apt - for example https://wiki.debian.org/DebianUnstable which is updated every 6 hours.
The same way rpm is just a packaging format - you can have both the stable (fosilised) CentOS and the fresh Fedora / CentOS-Stream using it.
In terms of customizability, is Homebrew any different from Apt? As far as I'm aware, Nix and Guix is the only system package manager that allows me to have full control over versioning and inter-package dependencies. Other package managers only let me install packages as provided by the packagers.
However, my aversion to homebrew goes beyond taste: my experience with homebrew is rife with breakages. To be fair we were trying to use it in a CI system, which will very quickly reveal a buggy system. By contrast, apt/dnf are rock solid when used in CI.
An actual example: we tried providing our own recipe to install a particular version of libicu. This triggered an upgrade of some dependency; that triggered an upgrade of libicu to a different version than 68. The command exited with a successful status. A real package manager would have detected the package conflict and reported it, giving you resolution options, or errored out in a non-interactive terminal.
Why were we trying to pin versions in the first place? You guessed it, package breakages.
Package stats from Repology seems to contradict this claim:
https://repology.org/repositories/graphs
It's not bad, but it's not the best either. Not even close.
> including tons of closed-source stuff
Homebrew doesn't ship any proprietary formulae at all. They have a clear policy against it:
> We don’t like binary formulae
> Our policy is that formulae in the core tap (homebrew/core) must be open-source with an Debian Free Software Guidelines license and either built from source or produce cross-platform binaries (e.g. Java, Mono). Binary-only formulae should go to homebrew/cask.
> Additionally, homebrew/core formulae must also not depend on casks or any other proprietary software.
> This includes automatic installation of casks at runtime.
https://github.com/Homebrew/brew/blob/master/docs/Acceptable...
And yet, I can install Sublime Text, Slack, and others through it out of the box. I just checked a couple more, Figma's there. Microsoft Office. Steam.
You used to have to run a one-liner to enable casks (just one, not one for every damn vendor like with apt) but not anymore.
(But please read this)
https://lna7n.org/2020/01/06/pulling-the-plug-on-archmac.htm...