Re: git: a5fc087131e6 - main - kmod: append osversion to the portversion

From: Baptiste Daroussin <bapt_at_freebsd.org>
Date: Wed, 11 Dec 2024 13:42:32 UTC
On Tue 10 Dec 13:55, Vladimir Druzenko wrote:
> 10.12.2024 13:52, Baptiste Daroussin пишет:
> > On Tue 10 Dec 13:32, Vladimir Druzenko wrote:
> > > 10.12.2024 11:17, Baptiste Daroussin пишет:
> > > > The branch main has been updated by bapt:
> > > > 
> > > > URL: https://cgit.FreeBSD.org/ports/commit/?id=a5fc087131e66513d1c74f8427c924afff580a15
> > > > 
> > > > commit a5fc087131e66513d1c74f8427c924afff580a15
> > > > Author:     Baptiste Daroussin <bapt@FreeBSD.org>
> > > > AuthorDate: 2024-12-09 08:57:35 +0000
> > > > Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
> > > > CommitDate: 2024-12-10 08:17:02 +0000
> > > > 
> > > >       kmod: append osversion to the portversion
> > > >       The version is now
> > > >       kmodpackagename-<kmodpackageversion>.<osversion>_<revision>,<epoch>
> > > >       This is necessary to make sure that the same packages built on a newer
> > > >       version of FreeBSD on a given branch is considered as an upgrade of the
> > > >       default provided one.
> > > >       In the current model of support, all packages are built on the lowest
> > > >       supported version of a given branch, which means right now all packages
> > > >       are built on 14.1, this results as since 14.2 has been released and up
> > > >       to the time 14.1 is EOLed we do not provide working binary packages for
> > > >       kernel modules and related for 14.2.
> > > >       With this we will be able to provide a dedicated repo built against 14.2
> > > >       that will be usable by users and pkg upgrade will simply update to the
> > > >       right version.
> > > >       https://reviews.freebsd.org/D47997
> > > > ---
> > > >    Mk/Uses/kmod.mk | 2 ++
> > > >    Mk/bsd.port.mk  | 2 +-
> > > >    2 files changed, 3 insertions(+), 1 deletion(-)
> > > > 
> > > > diff --git a/Mk/Uses/kmod.mk b/Mk/Uses/kmod.mk
> > > > index a28077e67697..36bc49462fdf 100644
> > > > --- a/Mk/Uses/kmod.mk
> > > > +++ b/Mk/Uses/kmod.mk
> > > > @@ -25,6 +25,8 @@ IGNORE=	requires kernel source files in SRC_BASE=${SRC_BASE}
> > > >    CATEGORIES+=	kld
> > > > +_OS_SUFX?=	.${OSVERSION}
> > > > +
> > > >    PIE_UNSAFE=	kernel modules are not executable
> > > >    SSP_UNSAFE=	kernel module supports SSP natively
> > > > diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
> > > > index 360fff6fc4cd..01dc08c265f5 100644
> > > > --- a/Mk/bsd.port.mk
> > > > +++ b/Mk/bsd.port.mk
> > > > @@ -1386,7 +1386,7 @@ PORTEPOCH?=		0
> > > >    _SUF2=	,${PORTEPOCH}
> > > >    .    endif
> > > > -PKGVERSION=	${PORTVERSION:C/[-_,]/./g}${_SUF1}${_SUF2}
> > > > +PKGVERSION=	${PORTVERSION:C/[-_,]/./g}${_OS_SUFX}${_SUF1}${_SUF2}
> > > >    PKGNAME=	${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PKGVERSION}
> > > >    DISTVERSIONFULL=	${DISTVERSIONPREFIX}${DISTVERSION:C/:(.)/\1/g}${DISTVERSIONSUFFIX}
> > > >    DISTNAME?=	${PORTNAME}-${DISTVERSIONFULL}
> > > Hello!
> > > 
> > > INDEX have incorrect versions, for example:
> > > virtualbox-ose-additions-6.1.50.1499999
> > > virtualbox-ose-additions-legacy-5.2.44.1499999_6
> > > virtualbox-ose-additions-nox11-6.1.50.1499999
> > > virtualbox-ose-additions-nox11-legacy-5.2.44.1499999_5
> > > virtualbox-ose-kmod-6.1.50.1499999
> > > virtualbox-ose-kmod-legacy-5.2.44.1499999_7
> > > 
> > > $ awk -F'|' '{print $1}' /usr/ports/INDEX-14 | grep 1499999 | wc -l
> > >       239
> > Ah yes index building... I need to think about it.
> > 
> > Index should have died long ago...
> > 
> > Best regards,
> > Bapt
> 
> How to quickly check for new versions without INDEX?
> 

Sorry I don't have alternative for this use case beside building INDEX locally,
but INDEX is not accurate anymore for a long time, this is yet another breakage
in the INDEX land.

Best regards,
Bapt