• Re: PKGBASE Upgrade 15.0-RELEASE to 15.1-BETA2

    From Colin Percival@cperciva@tarsnap.com to muc.lists.freebsd.stable on Sat May 9 21:50:33 2026
    From Newsgroup: muc.lists.freebsd.stable

    On 5/9/26 14:28, vermaden wrote:
    I was not able to find information on how to upgrade FreeBSD 15.0-RELEASE to 15.1-BETA2 in PKGBASE world.

    Its simple and known with freebsd-update(8) but a mystery with PKGBASE.

    Yeah, we realized earlier today that we forgot about that. We're working
    on it.
    --
    Colin Percival
    FreeBSD Release Engineering Lead & EC2 platform maintainer
    Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid



    --
    Posted automagically by a mail2news gateway at muc.de e.V.
    Please direct questions, flames, donations, etc. to news-admin@muc.de
    --- Synchronet 3.22a-Linux NewsLink 1.2
  • From Mark Millard@marklmi@yahoo.com to muc.lists.freebsd.stable on Mon May 11 13:01:08 2026
    From Newsgroup: muc.lists.freebsd.stable

    On 5/10/26 17:53, Mark Millard wrote:
    On 5/10/26 14:53, vermaden wrote:
    It's possible to do this without modifying the config files
    using `-o ABI=... -o OSVERSION=1501000 ...`
    People should also update ports (to get latest pkg),
    also kmods if required.

    Agreed.

    Thank You for suggestions.

    I added UPDATE 1 with information how to do upgrade w/o modifying the config files:

    - https://vermaden.wordpress.com/2026/05/10/freebsd-pkgbase-minor-upgrades#UPDATE1

    I also added additional info about updating boot code - both 'BIOS' and 'UEFI'.

    One thing that bothers me ...

    This:

    host # pkg -o ABI=FreeBSD:15:$(uname -m) \

    uname -m is wrong here for general use: in an aarch64 context "aarch64"
    needs to be the result. But:

    # uname -m
    arm64

    # uname -p
    aarch64

    A similar point goes for armv7:

    # uname -m
    arm

    # uname -p
    armv7

    powerpc* has similar naming distinctions.

    amd64 happens to have the same text for both.
    Simialrly, i386 has the same output for both.

    -o OSVERSION=1501000 \
    --chroot=/tmp/NEW \
    upgrade

    ... as I specify '-o OSVERSION=1501000' option for pkg(8) ... why '-o ABI=FreeBSD:15:$(uname -m)' is also needed to make it work? The '15' part or '${ARCH}' part does not change ...

    I mean - I know this is a pkg(8) design decision - just do not see logic in it.

    The:

    </usr/local/poudriere/jails/release15p1-aarch64/etc/pkg/FreeBSD.conf>

    in my context, that was automatically supplied, includes the text
    (warning: extra line wrapping):

    FreeBSD-base: {
    url: "pkg+https://pkg.FreeBSD.org/${ABI}/base_release_${VERSION_MINOR}",
    mirror_type: "srv",
    signature_type: "fingerprints",
    fingerprints: "/usr/share/keys/pkgbase-${VERSION_MAJOR}",
    enabled: no
    }

    Similarly for the 15.0-RELEASE-p* poudriere-devel jail.

    Note the notation: ${VERSION_MINOR} . For it:

    OSVERSION=1501000 leads to ${VERSION_MINOR} == "1"
    OSVERSION=1500000 leads to ${VERSION_MINOR} == "0"

    ${ABI} does not supply that information and pkg guessing/defaulting to 1500000 when OSVERSION is unspecified would be wrong for an upgrade to
    15.1 . Such needs ${VERSION_MINOR} == "1" .

    A point here is that with OSVERSION correctly specified, the url text
    for FreeBSD-base does not need to be edited or overridden in another
    file to do the upgrade. (More later below.)

    After booting the upgraded install, OSVERSION=1501000 becomes the
    default, no longer accessing base_release_0 .

    (I'm not aware of any use of the last 3 digits of OSVERSION for this
    context: ignored as far as I know.)

    I got that wrong. For example, in 1404500 the "5" (or [6-9]) indicates "-STABLE" So: 14.4-STABLE . It is another thing that the ABI does not
    indicate of itself.

    It is really the last 2 digits that I should have referenced as
    potentially ignored.


    Another point is that pkg 2.7.5 has the likes of:

    # pkg upgrade -rFreeBSD-base
    and
    # pkg install -rFreeBSD-base . . .

    working, overriding the "enabled: no" from the command line and
    disabling the ones not listed on the command line, again no edit or
    alternate file needed for overriding such.


    Regards,
    vermaden




    --
    ===
    Mark Millard
    marklmi at yahoo.com


    --
    Posted automagically by a mail2news gateway at muc.de e.V.
    Please direct questions, flames, donations, etc. to news-admin@muc.de
    --- Synchronet 3.22a-Linux NewsLink 1.2