Best practices when running "latest" pkg with incoming new RELEASE

Hi,

I know that this is supposed to be de-correlated but as I am new to FreeBSD I would like to hear you about what should I do when 14.2 will be release.
I have changed my pkg to fetch latest instead of quarterly recently, I would like to go back to quarterly when 14.2 would be released, so my question about what your recommendation are :

Should I upgrade my system first to 14.2 and then change pkg from latest to quarterly or should I do the reverse ? Or perhaps it doesn't matter at all as pkg is supposed to change only my installed pkg and 14.2 should only change everything related to the core system.

I am wondering if some dependencies from the core FreeBSD would break something to my installed pkg, so my question :)

Many thanks
 
99.9% of the packages built for 14.1 will run without problems on 14.2. It's typically only a handful that might cause a problem, kernel modules like the DRM drivers, or the virtualbox kernel module for example. They can cause problems, but it's also possible they'll run just fine. In any case, simply building those from ports will ensure they'll be built specifically for your kernel version. And this issue may pop up during the three month grace period, after that 14.1 will be EoL and packages will be build for 14.2.
 
Thanks SirDice it is useful !
So in my case where I would like to switch from latest to quarterly would you wait to do the 14.2 upgrade first ? BTW, is there a sync when 14.2 would be release does the latest would become quarterly or there is not a direct relation/sync ?
 
I think you are mixing up ports and packages - you are using packages-only from the sound of it - which is the recommended approach.

But there is the three month window that SirDice mentioned where you might have issues, depending on what you use FreeBSD for - do you use a graphical desktop or anything like Virtualbox?
 
Yes I am running FreeBSD on a recent Dell XPS under hyprland.

In fact I said ports but thats pkg I am using the most, I think I have one exception for the Intel grafical drivers where I had to build from ports
 
In any case, simply building those from ports will ensure they'll be built specifically for your kernel version
Yes, in that case you are already doing the bit that SirDice was talking about (in the quoted text above).

Why do you want to switch to/from quarterly/latest? What issues are you having or hoping to avoid? If everything is working for you now, why do you want to make this change?

I don't have the answers for you, just asking some questions that might make it clearer what you are after. You are being wise to ask, there do seem to be a few gotchas around the graphical kernel modules and upgrades. (I don't use FreeBSD for desktop so I've not encountered the issues myself.)
 
The reason why I switch pkg to latest is mostly because of Hyprland which is actively developed and the changes are noticeable.

But at the same time I would like/prefer to go back to a more stable approach and going back to quarterly is maybe the best thing to do as I am using my computer as my main laptop with heavy daily usage..

Where I am still not 100% clear is if 14.2 would also trigger the pkg latest to go to quarterly or if this is completely uncorrelated. And so my original question on when would be the best time to switch from latest to quarterly.

If 14.2 would bring latest to qut and create a new latest then I would maybe only need to switch back to quarterly after the 14.2 update but my assumptions are maybe wrong..

Thanks again for your help to understand
 
Where I am still not 100% clear is if 14.2 would also trigger the pkg latest to go to quarterly or if this is completely uncorrelated.
That is totally uncorrelated. All -RELEASE versions default to the quarterly packages, but can easily be switched to 'latest'. Just don't modify /etc/pkg/FreeBSD.conf, your changes could be undone during the upgrade.
 
The reason why I switch pkg to latest is mostly because of Hyprland which is actively developed and the changes are noticeable.

But at the same time I would like/prefer to go back to a more stable approach and going back to quarterly is maybe the best thing to do as I am using my computer as my main laptop with heavy daily usage..
This is quite common. The same happens when a completely new port (including its package) is introduced in the FreeBSD ports system; then it only appears in the main branch of the ports version control repository.

Latest & quarterly packages - release schemes​

In the context of packages, the main branch is referred to as latest; the other variety being quarterly. For supported release versions, for some architectures (like amd64), associated packages are build by FreeBSD and made available for remote install by means of pkg(8). You have to weigh the pros and cons of either following the main branch of the ports repository or, the most recent quarterly fork of the ports repository; you shouldn't mix these two. More on this topic: [Guide] About ports and (binary) packages

By its very nature latest, build from the main branch of the ports repository, is on a rolling release scheme. However, quarterly is on a quarterly release scheme: every new quarter a new quarterly branch is forked off from the main branch; current quarterly is 2024Q4 - ports tree. Using quarterly entails less changes during its active quarter: only security and bug fixes. Those same categories are equally applied to the main branch of the ports repository, and of course to their build products: latest packages . By design, neither latest nor quarterly is less "buggy", less error prone than the other. Because latest is on a rolling release scheme, it changes much more frequently, and you'll be confronted with (a lot) more packages upgrades every time you run pkg-upgrade(8); therefore some may find quarterly "more stable".


The release schemes of latest & quarterly are unrelated to the release of 14.2-RELEASE. The supported FreeBSD "versions" like -STABLE and -RELEASE follow the release scheme according to the FreeBSD Support Model: see Thread lts-support-and-version-clarifications.79890/; or how I've tried to explain it.
 
Last edited:
Back
Top