I don't know how this stupid thing works (aka, me and my new Macbook)


(Andy Wootton) #21

Due to ‘hardware & space restrictions’ I have my biggest screen connected to my Mac Mini and I’m missing using some of my standard FOSS tools on a big screen. I think the time has come to install a package manager.

I already know:

There isn’t an ‘official’ FOSS package manager for OS X.

Fink, MacPorts, and Homebrew exist.
Fink uses Debian apt-get conventions.
Apple hosts MacPorts so it seems to have Apple’s approval.
Homebrew is written in Ruby.
At least 2 of them can be used at the same time.

Does anyone have any advice why I should pick one (or two) of them over the others?


(Steve Jalim) #22

Purely from hand-on experience, not from evaluating the larger ecosystem/philosophy, I prefer Homebrew - it seems to be more up to date and is easy to use. brew doctor is v handy if things get odd.


(Andy Wootton) #23

Thanks. I saw someone write it off with an “it’s crazy to compile from source every time” type comment. Does it? The name hints that it might be true.


(Dom Barnes) #24

Better to trust the source code than a downloaded compiled version maybe? Does compiling really matter anyway?
I’m a big homebrew user. Love it. Did some fink and macports in my very early Mac days (~2004). Brew is much nicer to use. Just remember to run brew cleanup occasionally (like 2-3 times a year depending on how heavy a user you are)


(Daniel Hollands) #25

I’ve never run brew cleanup before (because I didn’t know it existed until now), and am amazed at how much old versions of software it removed. Freed up something like 5.3GB :open_mouth:


(Steve Jalim) #26

This operation has freed approximately 8.9GB of disk space

Crikey! thanks @dombarnes!


(Alex Russell) #27

FWIW Homebrew rarely compiles from source these days, instead just downloading the right binary for your system. Usually it’s only if the binaries site is down (or you have a dodgy connection) that it’ll attempt to compile from source.

And yeah brew cleanup is good, but make sure you never want to switch back to an old version - at least for the packages I tend to ever want to switch around, the Homebrew repo doesn’t keep old versions. Edge case definitely but I find myself needing to do it on occasion (mainly because I refuse to install pyenv or similar).


(Jon) #28

Only tangentially related, but I recently found out how to clean-up in Docker. Managed to save a whopping 16G in dead images.


(Alex Russell) #29

I think with the latest versions of docker docker image prune will be good enough for unused images. (I say latest versions, it’s been in for a few months maybe, but certainly not more than a year or so I think.)


(Dom Barnes) #30

If you wanna make it better create a Cronjob/LaunchAgent to run brew update regularly so you it always has the latest formulae. And run brew outdated to see what’s new waiting to upgrade.


(Andy Wootton) #31

Ew! I reckon at least 20% of my CPU time goes on updates now :frowning: At least I’d be taking control of the time. The default seems to be whenever I decide to go to bed or at startup when I’m in a rush.


(Marc Cooper) #32

There’s also brew cleanup -n, which tells you what will be removed, if anything (a dry-run). And brew cleanup -s, which clears the cache too. Handy after a large install.