As you already know, pkgsrc can be used to build a large variety of software. What you may not be aware of is that it can be used without super-user privileges; i.e., as a regular user, you can take advantage of pkgsrc to build software in systems you do not own! (Provided that you are allowed to do that, of course.)

The "problem" is that it has never been easy to do so (at least not for novice users): you had to override many variables in mk.conf file to avoid setting forbidden ownerships, strict permissions, etc., with the risk of forgetting something important.

With the changes I just commited, it should be easier than ever. If you already have a running installation, setting UNPRIVILEGED=YES in mk.conf should DTRT, and you may be able to remove many of your configuration. (Check the mk/unprivileged.mk file for details about what it does.)

In case you are bootstrapping a new installation, just do ./bootstrap --ignore-user-check. This will tell the script that you want to do a non-root build, so it will enable the unprivileged mode and choose several default directories for you. For instance, it will use ~/pkg as the default prefix (changeable through --prefix), and all other pkgsrc-related directories will be made relative to it.

For more information, check out this FAQ (may take an hour to reflect the changes).

Comments from the original Blogger-hosted post: