Moving from MacPorts to Homebrew
Using MacPorts? You should really think about moving to Homebrew. Why?
- Homebrew installs packages into their own isolated prefixes and then symlinked into /usr/local.
- It uses the libs that are already installed, no need to compile another perl, openssl or x11 and other stuff that can be found on your mac. Don't waste time and disc space.
- Way better command line user interface
- Homebrew and it's installation scripts are hosted at Github
- The installation scripts (aka recepies) and Homebrew itself are written in ruby.
Moving from MacPorts to Homebrew sounds a little bit scary. MacPorts has tons of compiled stuff on your system. But you can do this. Trust me :smile: .
First, uninstall MacPorts:
sudo port -f uninstall installed
Second step: remove everything that is left from MacPorts (check for MySQL and other stuff in /opt/local first) :
sudo rm -rf /opt/local sudo rm -rf /Applications/DarwinPorts sudo rm -rf /Applications/MacPorts sudo rm -rf /Library/LaunchDaemons/org.macports.* sudo rm -rf /Library/Receipts/DarwinPorts*.pkg sudo rm -rf /Library/Receipts/MacPorts*.pkg sudo rm -rf /Library/StartupItems/DarwinPortsStartup sudo rm -rf /Library/Tcl/darwinports1.0 sudo rm -rf /Library/Tcl/macports1.0 sudo rm -rf ~/.macports
Alternatively you can move those directories to another place and delete them if everything is okay (if you don't trust your Timemachine :wink: ).
After that you should remove the
/opt/local/bin from your
Now install Homebrew with the command you find here.
Yeah! You can now start install packages like wget with
brew install wget
There is only one little catch: if you have installed ruby gems that depend on libs from your MacPorts directory, you have to recompile them. I had to recompile my rmagick gem because it used the now deleted ImageMagick from MacPorts.