First, update pkg(8) itself to ensure you have the latest version:
# pkg upgrade -yr FreeBSD-ports pkg
Second, upgrade the base system. Create a temporary repository
configuration that points exactly to the 15.1-RC1 package repository:
# mkdir /tmp/upgrade-15.1
# echo 'FreeBSD-base: {
url: "pkg+
https://pkg.freebsd.org/${ABI}/base_release_1_rc1"
}' > /tmp/upgrade-15.1/upgrade.conf
Then upgrade the base system:
# pkg -o REPOS_DIR=/etc/pkg,/usr/local/etc/pkg/repos,/tmp/upgrade-15.1 \
-o IGNORE_OSVERSION=yes upgrade -r FreeBSD-base
After the upgrade, review any messages printed by pkg(8). Some base
packages may require additional configuration steps (e.g., running
'service <name> setup'). Follow those instructions as needed.
Third, update any third-party kernel modules (kmods) that you may
have installed from packages (e.g. drm-kmod, acpi_call). Use the same
temporary repository configuration:
# pkg -o REPOS_DIR=/etc/pkg,/usr/local/etc/pkg/repos,/tmp/upgrade-15.1 \
upgrade -r FreeBSD-ports-kmods
Fourth, update the UEFI boot loader. Back up the existing loader
file (if any), then copy the new loader `/boot/loader.efi` to the
appropriate location on the EFI System Partition (ESP). Common default
destinations:
amd64: cp /boot/loader.efi /boot/efi/efi/boot/BOOTX64.EFI
aarch64: cp /boot/loader.efi /boot/efi/efi/boot/BOOTAA64.EFI
armv7: cp /boot/loader.efi /boot/efi/efi/boot/BOOTARM.EFI
If your system uses a non‑standard loader path (e.g.,
`/efi/freebsd/loader.efi`),
find the correct destination with `efibootmgr -v` and look for the
`File(...)` entry of the active boot option.
Fifth, check for configuration file updates that may have been
installed as `.pkgnew` files:
# find /etc /usr/local/etc -name '*.pkgnew' -ls
If such files exist, manually compare them with the originals (e.g.
`diff /etc/rc.conf /etc/rc.conf.pkgnew`) and merge any necessary changes.
After verifying the configuration files, remove the temporary repository
configuration:
# rm -r /tmp/upgrade-15.1
Finally, reboot to load the new kernel and userland:
# shutdown -r now
Later, when 15.1-RELEASE is out, a plain `pkg upgrade` will move you
from the BETA to the final RELEASE automatically.