1. 33

pkgsrc is a cross-platform package manager that has been around since 1997. We offer signed binary package sets built every few days from pkgsrc trunk for OS X as an alternative to Homebrew or MacPorts for users who want to install extra software with minimal effort. Feedback welcome!

  1.  

  2. 9

    Shameless plug: if you want to get up and running with pkgsrc/pkgin with Joyent’s repo, you can use the Save OS X bootstrap script: https://github.com/cmacrae/saveosx

    1. 3

      SaveOSX is the best way to bootstrap pkgsrc on OS X, I’ve been using it for a long time!

    2. 8

      I’ve been using Homebrew for a few years–long enough to not realize what may be its limitations. How is Pkgsrc different/better/worse?

      1. 10

        One of the main differences is that it’s binary packages rather than all source. Whenever I finally updated homebrew my Mac was nearly useless for a few hours compiling some rather large packages and their dependencies. Updating pkgsrc takes only a few minutes to update in nearly every case.

        Pkgsrc also has over 14k packages whereas homebrew only has about 3500. And pkgsrc is cross-platform. I use it on OS X, SmartOS, OmniOS, and Linux to get a consistent set of packages/versions/configuration style across all platforms. Pkgsrc directly supports 18 different platforms and I’ve seen unofficial builds on several more.

        Pkgsrc packages are fairly easy to update if you want a newer version of something, and the maintainers, in my experience, are always willing to work with you to get patches/updates into trunk.

        Homebrew cute when you’re in college and beer is the central focus of your life. But really, I just need to get stuff done. For the most part pkgsrc does a better job of that than homebrew.

        1. 5

          Homebrew does have binary packages for quite a lot (all?) brews now to be fair, as long as you stick it in /usr/local.

          (Not advocating homebrew as better than pkgsrc though. Love pkgsrc on my servers, still using homebrew locally. Love both.)

          1. 2

            But really, I just need to get stuff done.

            Well, I guess Google doesn’t get stuff done then ;).

            https://twitter.com/mxcl/status/608682016205344768?lang=en&lang=en

            One of the main differences is that it’s binary packages rather than all source.

            That’s years ago. Nowadays, many Homebrew formulae are precompiled, so Homebrew rarely compiles stuff anymore:

            https://bintray.com/homebrew/bottles

            Pkgsrc also has over 14k packages whereas homebrew only has about 3500.

            This is a bit disingenuous, because pkgsrc keeps a lot of old versions. E.g.:

            http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/multimedia/

            There multiple versions versions of VLC, ffmpeg, etc. Then surprisingly, quite a few packages that I regularly use are absent from the Darwin packages (they are in Homebrew). For instance: Qt 5, bazel (for building tensorflow), Armadillo, ghc, cabal-install, pandoc, libsvm, rust (though I’ve switched to rustup.rs), and SWI Prolog is at an old version and only with all packages disabled (lite).

            https://pkgsrc.joyent.com/packages/Darwin/trunk/x86_64/All/

            Although I like pkgsrc, there are also some nice advantages to Homebrew. E.g., if you want to compile and install your own software, you just use /usr/local/Cellar/<mypackage>/<myversion> as the prefix and then the usually Homebrew functionality works (brew link <mypackage> to link under /usr/local, brew uninstall <mypackage> to remove, etc.).

            1. 4

              Qt 5, bazel (for building tensorflow), Armadillo, ghc, cabal-install, pandoc, libsvm, rust (though I’ve switched to rustup.rs), and SWI Prolog

              Thanks, this is useful, I’ll take a look at adding or fixing these. If there are any other packages that people would find useful that are missing, please feel free to raise an issue.

            2. 1

              Thanks, that’s useful background (well, minus the equation of one’s package manager and one’s age or taste for alcohol ;)

          2. 5

            I’m a massive fan of pkgsrc and a heavy user of it on my Mac systems. I’ve not used homebrew (something just didn’t sit right with me about their approach, never mind that I found the naming of their tools a bit silly), but I have used MacPorts, Fink and a few others and pkgsrc is by far the best way to make OS X usable.

            Kudos to jperkin and Joyent for making binary packages available - I toyed with doing the same myself a few years ago (I even had a name - pkgsrcx!) but they’ve done a far better job than I could’ve.