-
Notifications
You must be signed in to change notification settings - Fork 6
Installing NextBSD
Booting the image gives you a live, working system. When you want it on a disk,
nextbsd-installer does that.
On an Apple Silicon Mac, the Apple Silicon Mac (UTM) Guide walks through this in a VM with screenshots.
- Boot from the
.imgor.isoand log in asroot(no password). - Know which disk you are installing to. In a VM this is usually
vtbd0; on real hardware,ada0(SATA) ornvd0(NVMe). - The target disk is erased. Nothing on it survives.
nextbsd-installerIt is keyboard-driven — arrow keys to move, Enter to confirm — and steps through five screens:
| Screen | What it asks |
|---|---|
| Mode | How to install. Press Enter for the default. |
| Disk | Which disk to install to. Pick it, press Enter. |
| Account | Root password and hostname. |
| Install | Progress. Partitioning, newfs, the file copy, boot code. |
| Finish | Reboot or shut down. |
On the Finish screen, use the arrow keys to choose Shut Down, then eject the install media before powering back on — otherwise you boot the installer again.
Worth knowing, because it explains why the install is unusually forgiving:
The installer clones the running system onto the target with cpdup, then
labels the target UFS filesystem ROOTFS. Both the shipped /etc/fstab (which
refers to ufs/ROOTFS) and the kernel's built-in root path
(ufs:/dev/ufs/ROOTFS) resolve through that label rather than a device node.
So the install is disk-path agnostic — ada0, nvd0 and vtbd0 all work
with no edits, and moving the disk to a different controller does not break
booting.
The dangerous work — partitioning, newfs, the clone, boot code and ESP setup —
lives in auditable /bin/sh scripts that the UI runs and monitors, not in the
binary itself.
Log in as root at the console, or over SSH if you set a password and your
network reaches the box:
ssh root@<hostname>Substitute the hostname you set during install. If you have forgotten it, run
hostname at the console.
Then:
-
Installing Packages — point
pkgat the NextBSD repo - Command Reference — what to try first
- Service Management with launchd — enabling services
If you want to see the UI without touching hardware, it runs on any host:
cmake -S src/nextbsd-installer -B build -G Ninja
cmake --build build -j
./build/nextbsd-installer --demo--demo presents synthetic disks and simulates the install, and is implied
automatically on any non-FreeBSD host. --dry-run makes the engine print each
command instead of running it. Source lives in
nextbsd-userland/src/nextbsd-installer.
NextBSD is pre-production — continuous builds only, no stable release yet. Questions are welcome in Discussions.