Skip to content
kristi edited this page Jun 9, 2012 · 2 revisions

The pkgsrc repository from NetBSD is similar in that it provides a cross-platform distribution of sources.

Pros

  • Stable system
  • Auto-downloads sources and resolves dependencies
  • Usable as non-root user

Neutrals

  • Has many packages, but not as many as AUR
  • Usable on many many architectures. (Though I really only care about Linux)

Cons

  • No easy command line tool to find and install packages (ala apt-get or yum). You have to find the correct folder or manually download a tarball. (e.g. cd pkgsrc/archivers/tar; bmake; bmake install instead of simply apt-get install tar)
  • Finding packages is HARD because there is no easy command line tool. The pkgsrc tree has a pkglocate script which does a grep through all the package descriptions, but it is really really slow.
  • Old versions of packages
    • bsdtar/libarchive 2.8 (no packages for 3.1). The old bsdtar doesn't have options to change the owner when creating tar files, so users with UID greater than 2097151 can't create tar archives with bsdtar. (Which may seem obscure, but running on a Dreamhost shared server with a UID of 13025302) Could probably get around this by installing and using GNU tar (gtar) instead.
  • BSD tool defaults. Doesn't use linux/GNU versions
  • Not easy to create your own package. BSD Makefile is somewhat obscure format.
  • No easy update mechanism

Installation notes

Installation guide

The bootstrap script installs bmake (BSD's make program). You can grab the source tarball, or grab the source from CVS.

wget pkgsrc.tar.gz
tar pkgsrc.tar.gz
cd pkgsrc/bootstrap
./bootstrap --unprivileged --prefix=$HOME/pkgsrc

I had to disable the check for bmake because the checks were failing. (I think it was something about the detection of recursive Makefile dependencies. "cycle.99" something or other)

Need to set PATH and other environment variables to point to $HOME/pkgsrc paths.

Clone this wiki locally