-
Notifications
You must be signed in to change notification settings - Fork 6
Installing Packages
NextBSD uses pkg(8), the same package manager as FreeBSD, and the kernel is
ABI-compatible — so ordinary FreeBSD packages install and run.
There are two repositories in play: FreeBSD's (for third-party software) and NextBSD's own (for the OS itself).
NextBSD publishes its own base, kernel and userland as packages, which is how you move a running system forward without reinstalling.
Drop a config file matching your architecture into
/usr/local/etc/pkg/repos/NextBSD.conf:
amd64
NextBSD: { url: "https://github.com/nextbsd-redux/nextbsd-pkg/releases/download/continuous-amd64", enabled: yes }
arm64
NextBSD: { url: "https://github.com/nextbsd-redux/nextbsd-pkg/releases/download/continuous-arm64", enabled: yes }
Then:
pkg update
pkg install NextBSD-everything # base + kernel + userland
pkg upgrade # rolling — picks up each new snapshot| Package | amd64 | arm64 | Contents |
|---|---|---|---|
NextBSD-freebsd-compat |
✓ | ✓ | Base: libc, PAM, FreeBSD-source commands |
NextBSD-kernel |
✓ | ✓ | The kernel |
NextBSD-kernel-extensions |
✓ | — | Driver kexts (amd64 only today) |
NextBSD-userland |
✓ | ✓ | Darwin Mach runtime and daemons |
NextBSD-everything |
✓ | ✓ | Meta-package depending on all of the above |
Packages are currently unsigned. Signing is one of the remaining pre-production steps, so
pkgwill not be able to verify authenticity yet.
pkg update # refresh repository catalogues
pkg search nginx # find something
pkg install nginx # install it
pkg info # what's installed
pkg info -l nginx # what files a package owns
pkg delete nginx # remove it
pkg upgrade # update everything
pkg autoremove # drop orphaned dependenciesThird-party packages land under /usr/local, exactly as on FreeBSD.
A package that installs an rc.d script will not start the FreeBSD way — there
is no rc.conf here. You need a launchd job plist in
/Local/Library/LaunchDaemons/ instead. See
Service Management with launchd for how to
write one, including the foreground-flag trap that catches most people.
Continuous builds republish on every merge to main, so pkg upgrade against
the NextBSD repository tracks the rolling stream. There is no stable release
train yet — see the continuous release
for what is current.
Check what you are running:
nextbsd-version # userland build stamp
nextbsd-version -k # installed kernel
nextbsd-version -r # running kernelNextBSD is pre-production — continuous builds only, no stable release yet. Questions are welcome in Discussions.