freezr, yeah, that was part of what confused me. I tried things
Code:
url = "pkg+https://pkg.freebsd.org/${ABI}/releng/15t";
and others before giving up.
Turns out that it's
Code:
url = "pkg+https://pkg.freebsd.org/${ABI}/base_latest";
Actually, see below, that was wrong, that gave me STABLE. I *should* have used
Code:
pkg+https://pkg.freebsd.org/${ABI}/base_release_0
In part, that's because I was looking at the left column and missing the right (where it had /base_release). It also turns out that I installed STABLE not RELEASE. Heh that was ChatGPT's fault, they decided, and as I was already confused, I didn't check that.
I do have a second machine that is just used for storing backups and such. I might try on there.
I'm going to see what people post in the next few days. The second machine is headless, so i won't have trouble with alacritty and web browsers. Chrome did work, but I dislike it. I won't be getting to a fresh install for a few days. Of course, I'm not sure if issues I'm having are due to it being 15.0, upgrading with pkgbase, or mistakes I made with the update.
I might as well post what chatGPT gave me as a script. Perhaps it will help someone, but remember the caveat that after it was done some things didn't work. (Also after the reboot, I ran pkg upgrade. When I first rebooted, the amd-firmware (a Beelink SER5 with AMD gpu) had a version mismatch and X wouldn't start. I also see, while looking at it, that apparently some stuff got cut off. For example the shebang line, the #!/bin/sh and after that it has "et -e" I'm guessing that was set -e but not sure what that does.
echo "==> FreeBSD major upgrade to 15 using pkgbase"
echo " This script will:"
echo " • create FreeBSD-base.conf"
echo " • verify repositories"
echo " • run pkg-static upgrade with ABI=FreeBSD:15"
echo " • prompt before reboot"
echo
###############################################################################
# 1. Create /usr/local/etc/pkg/repos/FreeBSD-base.conf
###############################################################################
REPOFILE="/usr/local/etc/pkg/repos/FreeBSD-base.conf"
echo "==> Writing ${REPOFILE}"
mkdir -p /usr/local/etc/pkg/repos
cat <<'EOF' > "${REPOFILE}"
FreeBSD-base: {
url = "pkg+https://pkg.freebsd.org/${ABI}/base_latest";
mirror_type = "srv";
signature_type = "fingerprints";
fingerprints = "/usr/share/keys/pkg";
enabled = yes;
}
EOF
echo "✔ FreeBSD-base.conf created"
###############################################################################
# 2. Show current OS version
###############################################################################
echo
echo "==> Current system version:"
freebsd-version -ku
###############################################################################
# 3. Configure ABI for upgrade target
###############################################################################
ARCH=$(uname -m)
ABI="FreeBSD:15:${ARCH}"
echo
echo "==> Upgrade target ABI: ${ABI}"
###############################################################################
# 4. Dry-run repository check
###############################################################################
echo
echo "==> Fetching repo metadata (dry run)"
env ABI="${ABI}" pkg-static update -f
###############################################################################
# 5. Perform the actual base upgrade
###############################################################################
echo
echo "==> Ready to run pkgbase upgrade to FreeBSD 15"
echo "Press ENTER to proceed or Ctrl+C to cancel."
read _
env ABI="${ABI}" pkg-static upgrade -r FreeBSD-base
echo
echo "✔ Base system upgrade complete."
###############################################################################
# 6. Kernel + world reconciliation
###############################################################################
echo
echo "==> Running etcupdate (pre-merge)"
etcupdate resolve || true
###############################################################################
# 7. Final reboot
###############################################################################
reboot
Again this script was by chatGPT and as mentioned, I apparently pasted incorrectly at the beginning. Also, note that this script chooses STABLE, not RELEASE. (See
freezr's post above. ChatGPT choose base_latest which is stable, rather than base_release_0).
Oh well, that's one reason I chose this box to try pkgrelease, I lose nothing important. Actually, I'm *gradually* getting the idea of how to do it.