Re: FreeBSD kernel version 0
- Reply: Reshad Patuck : "Re: FreeBSD kernel version 0"
- In reply to: Reshad Patuck : "FreeBSD kernel version 0"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 26 Apr 2024 11:38:48 UTC
On Fri 26 Apr 16:49, Reshad Patuck wrote: > Hi, > > I have been trying to compile FreeBSD 14.0-RELEASE-p5 on a FreeBSD > 14.0-RELEASE VM today and it seems like the FreeBSD_version annotation in > the +MANIFEST file is set to the value "0". > This caused my system to throw the error "pkg-static: Invalid FreeBSD > version 0 for package FreeBSD-kernel-generic" when I tried to install the > pkgs on another FreeBSD 14.0 system. > > I had compiled the same version (using the same commit hash) on the 12th of > March and it worked fine. > > I have attached the following files at https://paste.ee/d/9KcnQ: > - pkg-base-build-script.sh - The list of commands I used to build a new pkg > base instance > - +MANIFEST-working - the +MANIFEST file from the working pkg of FreeBSD > 14.0-RELEASE-p5 built on 2024-03-12 > - +MANIFEST-broken - the +MANIFEST file from the broken pkg of FreeBSD > 14.0-RELEASE-p5 built on 2024-04-18 > > I use a stock FreeBSD 14.0 image in AWS to spin up a new VM each time I run > this compilation and have used the same image since February. > The only thing that runs before I run the compilation is a pkg installation > of some tools like git, curl, htop, screen and vim. > > Looking at my archives, it seems that the version of pkg had changed from > '1.20_9' to '1.21.2'. Could there be something here? > Any help understanding why this difference exists will be much appreciated. > > Best Regards, > Reshad The reason is a bug in the 14.0 Makefiles which are not exposing OSVERSION (fixed in main, stable and will be in 14.1) and a behaviour fix in pkg 1.21.2 which highlights the main issue. Up to pkg 1.21.2, pkg was leaking the OS version of the builder host into the package, since pkg 1.21.2 pkg stops leaking that informaiton and so the version if set to 0. Waiting for 14.1 to be release the builders have to export OSVERSION variable. the content of the variable should match what ever is the _FreeBSD_version in the source being built, this information is available in sys/sys/params.h Best regards, Bapt