Slashdot Mirror


Homebrew 2.0 is Here With Official Support For Linux and Windows (brew.sh)

Homebrew, a popular package manager for macOS, has released version 2.0 with official support for Linux and Windows 10 (with Windows Subsystem Linux). Cross-platform setup scripts just got a whole lot easier. Other highlights: Homebrew does not run on OS X Mountain Lion (10.8) and below. For 10.4 - 10.6 support, see Tigerbrew. This has allowed us to remove large amounts of legacy code.
Homebrew does not migrate old, pre-1.0.0 installations from the Homebrew/legacy-homebrew (formerly Homebrew/homebrew repository. This has allowed us to delete legacy code that dealt with migrations from old versions.
Homebrew does not have any formulae with options in Homebrew/homebrew-core. Options will still be supported and encouraged by third-party taps. This change allows us to better focus on delivering binary packages rather than options. Formulae with options had to be built from source, could not be tested on our CI system and provided a disproportionate support burden on our volunteer maintainers.

34 of 76 comments (clear)

  1. Hoping for new cute metaphor themes by goombah99 · · Score: 2

    they should give it replaceble themed metaphor names for it's cute naming of steps
    Instead of just, Cellar, and brewing, and ....

    one could come up with more edgy or more cute names. Perhaps a Football theme, or BDSM theme or Cat lover theme.

    Other than that does anything distinguish Homebrew?

    it seems like every 5 years the distro that's the least broken and least hassle fluctuates

    for a while it was Fink., then Macports, then back to Fink. THen back to mac ports. Then homebrew.

    Over the last while homebrew has been pretty consistently good so I've not had to go back to one of the others.

    Currently however, being heavily into python now, I use anaconda for everything Anaconda can supply and then only then reach for the homebrew.

    What I like about some of these is that maintain their own diractory like /opt/sw or the brew directory , and don't poison your /usr tree. This makes trashing them and re-installing a bitrotted crufty install easy to fix. I also like that I can even do user level installs for some of these.

    But my favorite by far is anaconda with its environments to keep the vegetables from touching on my plate. If someone could expand anaconda to gobble up all of homebrew this would be perfect.

    --
    Some drink at the fountain of knowledge. Others just gargle.
    1. Re:Hoping for new cute metaphor themes by goombah99 · · Score: 1

      some features I particularly like about anaconda are

      1. it makes reversions much more simple and reliable. SO if you install something and later find you need to downgrade, it can walk back all the dendencies.

      2. It does the best job of solving mutal dependencies i've seen. if you install one package that also installs say the latest version of Latex, then late install a package but it requires an older LAtex, it can find some combination of Latex and all it's dependencies that let you run all your installs even if it has to downgrade some. it's really robust and warns you about it's tricky schemes before it does them

      3. However with the environments this situation actually arrises less than it used to. It used to be one had one giant monolithic apt-get set of libraries for every damn thing you did on your computer. Now with enviroments you install the least set of installs to do whatever you are doing. Say scientific pything. Maybe you don't need the GPU or Simd for some project well don't install those alpha-level libs needed for that. But when you do need that risk taking fragile class of dependencies well you can have that in enviroment. And both of those are separated from the ones you need for word processing and those are separated from the ones you need for Blender.

      do all the fragilities go away. And if one of them does die you can just kill it. and re-install. And it's fast cause it's small and minimal to download.

      4. finally it's easy to clone an particular environment. Combine this with minimal installs per environment and it makes knowing what the minimum set of dependcies you need to make your code work. Easy to distribute.

      5. when I used to have to reinstall some monolithic apt-get environment accumulated from years of installs I would find that somethings could no longer be found in the same versions or had been deprecated. getting back to where you were, especially if you used non-standard repositories was hell.

      --
      Some drink at the fountain of knowledge. Others just gargle.
    2. Re:Hoping for new cute metaphor themes by goombah99 · · Score: 1

      yes but if every package installed dumps into /usr/local it becomes the trash compacter on the death star. You don't want to wade in and clean it out.

      --
      Some drink at the fountain of knowledge. Others just gargle.
  2. I’ve stayed away by 93+Escort+Wagon · · Score: 4, Informative

    I’m not sure their security model is fully baked. They claim sudo is bad; but their solution seems to be making /user/local/bin writable to everybody (and if you try to avoid this permissions change using sudo, homebrew will block it). And while they claim /user/local/bin is only the “preferred” install location, if you attempt to use a different directory you quickly find many basic things will break - so there’s no good way around this.

    --
    #DeleteChrome
    1. Re:I’ve stayed away by phantomfive · · Score: 1

      One of the many reasons I was glad to leave OSX was to be done with the lousy package management solutions. I am grateful for them, they were better than nothing, but there are so many better options on Linux.

      --
      "First they came for the slanderers and i said nothing."
    2. Re:I’ve stayed away by Anonymous Coward · · Score: 1

      macports is based on BSD ports. ports is phenomenal, thus so is macports, even with their limitied support (limitied personel). Homebrew is trendy, but a binary installer, and it's momentum is from irrational popularity. The term "brewnistas" is appropriate. They remind me of the "penguinistas" from the early naughts, when linux was a mess (well, it still is) and too unstable and NOT ready for the prod servers, but the fanatics could not be tamed. Eventually, of course, linux got stable, but I can't see what is attractive about Homebrew. I think it's binary package management for individuals that want an easy way to install one thing, then they say how great it is their package management is managing one single binary package. I prefer to roll my own no matter how many packages I install.

    3. Re:I’ve stayed away by ruurd · · Score: 1

      Simply untrue. Just checked. /usr/local/bin is not world or group writable.

      --
      ruurd
    4. Re:I’ve stayed away by 93+Escort+Wagon · · Score: 1

      Simply untrue. Just checked. /usr/local/bin is not world or group writable.

      Then it is owned by you rather than root - correct? That’s slightly less awful but still not good.

      --
      #DeleteChrome
    5. Re:I’ve stayed away by null+etc. · · Score: 2

      Homebrew's security model is half-baked, if that, and they justify it with lame rhetoric ("Why does Homebrew say sudo is bad? Sudo is dangerous, and you installed TextMate.app without sudo anyway.") Uhm, pointing out that TextMate installs itself poorly on an OS itself that has a half-baked approach to multi-user applications is... lazy at best, and incompetent at worst.

      The best workaround I've found is to create a security group called something appropriate (like "local"), and assign your user to that group. Make all subdirectories of "/usr/local" owned by root and the security group, and make all subdirectories chmod 664, and all subdirectory files that are executable 775, and all other subdirectory files 664. Make any other users that want to use Homebrew also belong to the security group.

      Occasionally, a "brew install" will fail, and you'll have to temporarily change all contents under "/usr/local" to be owned by your user, and then change it back after the install is done. But for the most part, this strategy allows multiple users to share Homebrew without exposing "/usr/local" to ridiculous security privileges.

    6. Re:I’ve stayed away by ceoyoyo · · Score: 1

      Curious... maybe the newer versions of TextMate don't work properly? I certainly had to provide sudo credentials to install the TextMate command line tools in /usr/local/bin.

      If they mean installing the app package itself, Homebrew could also choose to store it's stuff in a user writable location.

  3. Re:I've stayed away by HiThere · · Score: 1

    Yiii! Really? I'm impressed that something that bad is available. It sounds as if it should only be run in a VM, if then.

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  4. MacOS by fluffernutter · · Score: 4, Interesting

    Brew is a hacked solution that was created because MacOS sucks. What is the point of bringing it to other OSes that already solved these problems a long time ago.

    --
    Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
    1. Re:MacOS by Anonymous Coward · · Score: 2, Insightful

      And the package management solution on Windows is...?

    2. Re:MacOS by dmt0 · · Score: 2

      And the package management solution on Windows is...?

      Chocolatey (https://chocolatey.org/)
      Not saying it's great or better than what's on Linux, but it's definitely better than nothing.

    3. Re:MacOS by serviscope_minor · · Score: 1

      Yeah came here to say that.

      I've found homebrew to be, well, it's better than macports, but that's not saying much. And macports was better than nothing, so homebrew is at least twice as good as nothing! On the other hand it somehow seems less good than what's available on Linux. The compile from source model is also just a bit on the annoyingly slow side. Kind of like gentoo, but with less of the funroll overtones.

      Might bo OK on Windows though, that doesn't have well established package managers like Linux.

      --
      SJW n. One who posts facts.
    4. Re:MacOS by ruurd · · Score: 1

      Blaaaah blaaaah blaaaah just hijack the thread for your uninformed and meritless opinions.

      --
      ruurd
    5. Re:MacOS by guruevi · · Score: 1

      Chocolatey is highly reliant on .NET and PowerShell (v4). It doesn't work on XP and is all around lousy on Windows Vista, 7 and 8. 10 is workable but it requires you trusting someone else to package/publish binaries, it also requires you to 'trust' the environment and will often break whenever your Windows environment isn't what the packager has assumed.

      Although this seems to be normal to accept from deployment scenarios within the Windows ecosystem (such as SCCM and other commercial offerings), Brew (can) compile your binaries from scratch so you can relatively simple verify that what you get is what you want and hasn't been tampered with and should accept most of whatever your environment defaults are.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    6. Re: MacOS by spongman · · Score: 1

      Chocolatey for win32 apps, apt for Ubuntu/wsl.

    7. Re: MacOS by spongman · · Score: 1

      Works great for me.

    8. Re:MacOS by AmiMoJo · · Score: 1

      What is a good solution for Windows?

      Chocolatey seems to be the most popular, but it's support for portable apps is quite poor.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
  5. Homebrew driving you to drink? by wispoftow · · Score: 2

    This project got momentum by trashing on MacPorts, although MacPorts has always worked fine for me. Homebrew will never be on my system, simply because of their shabby treatment of a good port system written by very good people.

    (And for some silly reason, they decided to put everything in /usr/local, thereby making it very difficult to remove as it is commingled with other apps which use the same scheme.)

    1. Re:Homebrew driving you to drink? by PhunkySchtuff · · Score: 3, Informative

      This project got momentum by trashing on MacPorts, although MacPorts has always worked fine for me. Homebrew will never be on my system, simply because of their shabby treatment of a good port system written by very good people.

      Not only is this poor form to trash the competition - I don't know that the competition even deserve this trashing. I've been using MacPorts since it was DarwinPorts. I've never experienced it not working, or doing anything that I didn't expect it to. In the early days there may have been some software that simply wasn't ported over, but it's always behaved itself when I've been using it.

    2. Re:Homebrew driving you to drink? by nawcom · · Score: 2

      I've preferred MacPorts/DarwinPorts because it's very similar to BSD Ports in regards to it using libraries separate from the base install, unlike the way homebrew works in regards to a number of libraries. Also MacPorts has gone a long way when it comes to having precompiled packages ready. I remember the 10.6 days and how much you compiled but now - 95% (my personal estimate) of the dependencies and target ports you're trying to install has precompiled packages for your specific Darwin version ready to go. Many times there's no compiling involved at all.

    3. Re:Homebrew driving you to drink? by serviscope_minor · · Score: 1

      This project got momentum by trashing on MacPorts, although MacPorts has always worked fine for me.

      I never had luck with macports. I found it would work for a few months, then screw up and need a reinstall. Since it was compile from source that was an overnighter.

      Technically I found it flawed. I didn't catch any drama regarding it but there's not really an excuse for that.

      And for some silly reason, they decided to put everything in /usr/local

      yep.

      --
      SJW n. One who posts facts.
  6. Which distro does this target? by Bradmont · · Score: 4, Interesting

    What Linux distro does this target? The only one without an existing (and better) package management system is Slackware... and it's that way because the users want it that way...

    1. Re:Which distro does this target? by Anonymous Coward · · Score: 1

      Slackware with SlackBuilds.org and Sbopkg is already better thanks

  7. Of course by OneHundredAndTen · · Score: 1

    Because there is a serious dearth of package infrastructures under Linux. While you are at it, come up with a new terminal emulator as well.

  8. Re:Wow by fbobraga · · Score: 1

    good question...

  9. Happy fun ball by Tailhook · · Score: 1

    Homebrew does not speak or respond to voice commands.
    Homebrew does not have configuration with selections in alpha-qanon distributions
    Homebrew does not have a cape or exhibit any special powers.
    Homebrew does not have any selection to induce Hypo-package virtualization symmetry.
    Homebrew does not require refrigeration.
    Homebrew does not taste particularly good and should not be eaten.
    Homebrew does not emit harmful rays or other quanta with this release and shielding is no longer necessary.
    Homebrew does not tolerate taunting or being dropped.

    --
    Maw! Fire up the karma burner!
  10. Re:Anaconda is better if you just want Python shit by Cito · · Score: 1

    the real reason google didn't hire him is likely because he's a young white male.

  11. #t2sde can theoreically do this for a decade, too by ReneR · · Score: 1

    Always when I read "major news" like this I feel a bit sad not having polished and pusedh this more in our T2 SDE Linux cross compile emebdded scripting source meta distribution thing: https://t2sde.org/ I compiled to macOS a decade ago to "emerge" Subversion from source and such, 2005/2006 time frame. I even used it to compile some MinGW runtime thing, to cross compile some of my code and test programs to Windows executables. Guess now w/ my new YouTube ad funded effort I could polish this more up again for just build more again – https://youtube.com/ReneRebe

  12. Package manager? by Red_Forman · · Score: 1

    I thought installing applications on a Mac was simply "copy the directory and your software is installed". Why the fuck would you need a package manager on Mac?

  13. Homebrew is nice, but Cask is even nicer by cerberusss · · Score: 1

    Homebrew was already a very nice way to install GNU and other open source stuff. But Cask is an extension that scripts the installation of packaged software:
    https://caskroom.io/

    Plus, if you install the mas command-line utility to install App Store stuff, this makes it easy to completely script the installation of a Mac. The following shell script installs a fresh new Mac for me:


    #!/bin/sh
    export HOMEBREW_CASK_OPTS="--appdir=/Applications"

    # install homebrew
    ruby -e "$(curl -fsSL https://raw.githubusercontent....)"
    brew doctor
    brew tap caskroom/cask
    brew install \
    imagemagick \
    watch \
    par2 \
    wget \
    ffmpeg \
    youtube-dl \
    vim

    # some apps
    brew cask install \
    firefox \
    istat-menus \
    google-chrome \
    iterm2 \
    hammerspoon

    mas install 123456 # Break Reminder (2.3.0)
    mas install 234567 # The Unarchiver (4.0.0)
    mas install 345678 # 1Password (6.8.8)

    Note that for mas to work, you'll have to log into the App Store first, then kick off the above script.

    --
    8 of 13 people found this answer helpful. Did you?
  14. Highlights: Here's Stuff We Don't Do by W.+Justice+Black · · Score: 1

    Lots of "homebrew does not..." in those highlights, no?

    --
    "Time flies like an arrow; fruit flies like a banana." --Groucho Marx