How I Use Pkgsrc
12 hours ago
- The author uses pkgsrc on Debian to build software from source with separate installation locations, avoiding mixing system and user packages.
- Bootstrap process involves cloning pkgsrc repo, checking out a quarterly release branch, setting environment variables for Clang, and running bootstrap with options like --unprivileged and --prefix.
- Configuration via mk.conf sets work/dist directories, pkgsrc source symlink, number of jobs, custom mirror, license acceptance, Python version, and per-package options.
- After bootstrapping, pkgsrc is added to PATH and MANPATH in .zshrc; packages are installed using bmake install from the pkgsrc directory.
- Building complex packages like Firefox and Thunderbird from source is possible but may require fixes for dependencies like pulseaudio and rust.
- Font issues are resolved by installing pkgsrc fonts (e.g., noto-ttf) and adjusting Firefox's sandbox level to recognize them.
- Utility tools include pkg_alternatives for setting default package versions and pkg_rolling-replace for upgrading packages when switching quarterly branches.
- The author uses pkgsrc for userland software (emacs, hugo, cmus, thunderbird) and finds it aligns with FOSS philosophy of building from source.