Let it be known that I updated a #FreeBSD 15.0-RELEASE host to 15.0-RELEASE-p4 via pkg-base.

It happened this week. The 15.0 images on #Azure are base-ified already.

It went smoothly. I was impressed. Then I rebooted. No. Big. Deal.

Thanks.

@dvl I love pkgbase it’s the best and I don’t care for the naysayers. They have reasonable points but until you’ve updated a fleet of 100s or 1000s of systems with it, you haven’t seen the light.

@dch i'm currently upgrading a few 15.0-CURRENT/-PRERELEASE machines which is a little more interesting, but so far nothing has broken, bapt did a good job on the new conflict solver.

@dvl

@lw @dvl yep this is trickier! Are you going to 15.0 or to CURRENT?

My only remaining pain point is installing different versions or ABIs like jails, too many manual or special secret tweaks needed.

@dch to 15.0, so it's mostly just installing set-minimal and handling a couple of package renames (audit-lib, xz-lib). we'll need to try 15.0 to 16.0 at some point to see what needs to go into the release notes, but i *think* everything should be handled automatically.

i don't usually run different OS versions in jails (aside from poudriere) but i don't remember that needing anything special... doesn't pkg pick up the correct ABI automatically once it's installed? freebsd-update had a lot of issues with this since it relied on uname(1).

@dvl

@lw it’s the initial bootstrap into an empty sir that doesn’t behave. @dvl

@dch hm... are you doing this with signed packaged (e.g. pkg.freebsd.org)? iirc, there's an issue with pkg where it needs the signing keys installed *in the chroot* before you can install anything, which might be what you're running into.

i thought i'd filed a pkg PR for this (because it's clearly a bug) but i can't seem to find it now, maybe i just mentioned it on IRC.

@dvl

@lw yeah it’s that and also forcing ABI in an empty dir
@dch i'm pretty sure setting ABI for an empty dir works in general since i do this all the time (and i also tested it for the example in freebsd-base(7)), unless something has broken in the mean time? but none of my repositories are signed.

@lw @dch WHERE HAVE YOU BEEN ALL MY LIFE?

https://man.freebsd.org/cgi/man.cgi?freebsd-base(7)

Okay… few months, but still.

Looks like the URL handling might not like the parentheses. But still.

FreeBSD Manual Pages

@dexter @dch

we basically threw this together at the last minute when it became apparent we were about to release 15.0 with no documentation on pkgbase :-)

@lw @dch Which is 1000% better than continued wild guesses on everyone’s part.

Thank you!

@dch I don't have a great deal of patience with people who supposedly follow FreeBSD, closely, for years, and then express dismay that FreeBSD can be upgraded:

pkg upgrade

I mean, come on, people. The plan was clear enough more than a decade ago.

In last year's <https://mail-archive.freebsd.org/cgi/mid.cgi?dfc2de28-f496-4746-ac78-5b5ff68c5ed6> I refrained from quoting Glen Barber (his 2016 call for testing):

"… Also note (as repeated below), running 'pkg delete -a' will implicitly remove base system packages after they are installed. …"

@dvl

#pkgbase #FreeBSD #pkg #upgrade

@dch So far, it's been just one host.

I have about 8 hosts, on #FreeBSD, but they are still using freebsd-update. The about-80 jails also use freebsd-update.

One day, not so far away,

Have you run baseify on a jail? I imagine "it just works".

@dvl I have not, my jail stuff is all nuke-and-pave so I don’t upgrade I annihilate