Live data from Hacker News

Homebrew 1.1.0

brew.sh

101–110 of 216 posts

Re: Homebrew 1.1.0

#101
post #65

Earlier quoted context omitted.

Ditto. I install almost everything via brew and brew cask, and store the list of packages in git. It makes setting up a new machine a breeze. Thanks for all your hard work!

This is a cool idea! How does one go about doing this though? Is there a flag to output a text file with the names of installed versioned packages?

Using brew bundle, run `brew bundle --help` for info. I then store the Brewfile along with my other dotfiles

Re: Homebrew 1.1.0

#102
post #90

Earlier quoted context omitted.

To perhaps save you some effort: we still ask you to chown e.g. `/usr/local/bin` which may or may not make it unacceptable to you.

That's not quite as bad as all of /usr/local, but still not great. Why "e.g."? What else is there? And why not just use /usr/local/homebrew or even better, a path determined by an environment variable? I don't mind giving you a user-owned directory to install things in. I mind very much being required to change system default security settings.

You can use a different directory, though some packages may be broken:

https://github.com/Homebrew/brew/blob/master/docs/Installati...

Re: Homebrew 1.1.0

#103
post #90

Earlier quoted context omitted.

To perhaps save you some effort: we still ask you to chown e.g. `/usr/local/bin` which may or may not make it unacceptable to you.

That's not quite as bad as all of /usr/local, but still not great. Why "e.g."? What else is there? And why not just use /usr/local/homebrew or even better, a path determined by an environment variable? I don't mind giving you a user-owned directory to install things in. I mind very much being required to change system default security settings.

[deleted]

Re: Homebrew 1.1.0

#104
post #65

Earlier quoted context omitted.

Ditto. I install almost everything via brew and brew cask, and store the list of packages in git. It makes setting up a new machine a breeze. Thanks for all your hard work!

This is a cool idea! How does one go about doing this though? Is there a flag to output a text file with the names of installed versioned packages?

The officially supported thing is: https://github.com/Homebrew/homebrew-bundle

See my Brewfile in my dotfiles for how I use it to install my stuff: https://github.com/MikeMcQuaid/dotfiles/blob/master/Brewfile

If you want to go a step further there's also Strap which will bootstrap your macOS system with some sensible defaults and install Homebrew, your dotfiles and your Brewfile: https://github.com/mikemcquaid/strap

Finally, if you're interested how I combined these to replace Boxen at GitHub (our macOS system/project bootstrap tool using Puppet) read this: http://mikemcquaid.com/2016/06/15/replacing-boxen/

Re: Homebrew 1.1.0

#105
post #96
post #9

This spyware is awesome! Love how they track everything you do with the use of environment variables.

Care to explain, or are you just rambling?

They phone home (to Google Analytics) by default: https://github.com/Homebrew/brew/blob/master/docs/Analytics....

It's pretty ridiculous. They're giving Google a map of everything individual users install. The only reason it's "anonymous" is that they're relying on Google to throw away personally identifying data before Homebrew sees it.

Re: Homebrew 1.1.0

#106

Earlier quoted context omitted.

To perhaps save you some effort: we still ask you to chown e.g. `/usr/local/bin` which may or may not make it unacceptable to you.

(Reaching back into foggy memory...) The last time I installed Homebrew, I think I had the problem that `/usr/local/bin` didn't exist, and I didn't have write permissions for `/usr/local/` so I couldn't create it (w/out sudo/chown) etc. This, using Sierra. Does that seem likely? Usual? What's the ideal solution?

You need to use `sudo` as a one-off thing when you install Homebrew. Our installer does that for you otherwise we'll prompt you with `brew doctor`.

Re: Homebrew 1.1.0

#107
post #90

Earlier quoted context omitted.

To perhaps save you some effort: we still ask you to chown e.g. `/usr/local/bin` which may or may not make it unacceptable to you.

That's not quite as bad as all of /usr/local, but still not great. Why "e.g."? What else is there? And why not just use /usr/local/homebrew or even better, a path determined by an environment variable? I don't mind giving you a user-owned directory to install things in. I mind very much being required to change system default security settings.

We don't require you to take ownership of any directories that already exist when macOS is installed (i.e. `/usr/local` subdirectories but not `/usr/local` itself). Regardless of whether we should have picked another path, changing now would require rebuilding all our binary packages and that's a lot of effort with little return and almost certain breakages.

Re: Homebrew 1.1.0

#108
post #64

I have very mixed feelings about homebrew. When it works, it is awesome, but when it doesn't it can be a serious nightmare. In particular, homebrew refuses to run under sudo. Instead, to instal in /usr/local it wants me to recursively chown /usr/local to myself, which is a Really Bad Idea (tm). I have mostly stopped using it for this reason. I understand that running a program that runs third-party scripts under sudo…

> Instead, to instal in /usr/local it wants me to recursively chown /usr/local to myself, which is a Really Bad Idea (tm). Why is this a really bad idea for a personal machine? The only problems I can think of are some subdirectories that are conventionally given some other user ownership to make running a related server under a specific user, and the problem of putting potentially arbitrary probably unreviewed execu…

> Why is this a really bad idea for a personal machine?

It's a security risk. Having user access to /usr/local allows me (or, more to the point, an attacker running as me and not root) to surreptitiously replace system binaries, some of which may be run by other users. Some of those other users may have access to parts of the system that I don't have. Some of those other users may even be running as root.

> What's the alternative?

/usr/local/homebrew/bin. Or even better /opt/homebrew/bin. Or even better, a path that is set in an environment variable.

Re: Homebrew 1.1.0

#109
post #37

Just a quick poll. Is anybody still using MacPorts or anything else? If so, why?

MacPorts user here. It keeps ALL of its stuff in a single directory, and you just have to add it to the path. All package managers screw up from time to time, however MacPorts mistakes/inconsistencies are easily fixed, Homebrew has always been a pain in the ass for me. Also, no telemetry.

Re: Homebrew 1.1.0

#110
post #72
post #37

Just a quick poll. Is anybody still using MacPorts or anything else? If so, why?

$ sudo port install texlive +full Have you tried installing TeX Live with Homebrew? I can't even fathom using a package manager that complains about managing packages 'cause it is too hard.

  > Error: No available formula with the name "texlive" 
  > ...  
  > You can install it with Homebrew-Cask:  
  >   brew cask install mactex
And then `brew cask install mactex` works nicely.
Post reply on HN