NAK: [SRU][m:unstable-meta][RFC 1/1] UBUNTU: [Packaging] Drop wireguard DKMS

Dimitri John Ledkov dimitri.ledkov at canonical.com
Wed Oct 4 09:40:59 UTC 2023


On Wed, 4 Oct 2023 at 09:57, Juerg Haefliger
<juerg.haefliger at canonical.com> wrote:
>
> On Wed, 4 Oct 2023 07:51:36 +0200
> Andrea Righi <andrea.righi at canonical.com> wrote:
>
> > On Tue, Oct 03, 2023 at 03:46:25PM -0500, John Cabaj wrote:
> > > On 10/2/23 6:11 PM, Dimitri John Ledkov wrote:
> > > > On Mon, 2 Oct 2023 at 19:21, John Cabaj <john.cabaj at canonical.com> wrote:
> > > >>
> > > >> Commit ed294cea82a6 in the main kernel package dropped
> > > >> Wireguard DKMS support. Reflecting that in the meta
> > > >> package to avoid error message during package building
> > > >> ("modinfo: ERROR: Module /lib/modules/<abi>/kernel/drivers/net/wireguard/wireguard.ko not found")
> > > >
> > > >
> > > > This is an error in your packaging, since you are probably disabling
> > > > module compression, this check too should be adjusted to look for
> > > > uncompressed module.
> > >
> > > While I did notice this on a package I was creating, this error occurred while attempting a
> > > normal mantic:linux crank as well (open, close, pull-source, build-source), which had module
> > > compression enabled.
> >
> > IIUC we get this error when creating the source package, because
> > neither wireguard.ko.zst nor wireguard.ko is available, but at build
> > time this should be resolved correctly.
> >
> > This is ugly and we should definitely get rid of this confusing logic.
> > Since there are still userspace components that may require the
> > wireguard-modules we can't completely get rid of it, but maybe we can
> > simply provide an unversioned wireguard-modules dependency, so
> > user-space should be happy and we can get rid of the logic that extracts
> > the version from wireguard.ko[.zst].
>
> Why not hard-code it to 1.0.0 since that's what the module advertises and
> it's likely to never change.
>

Yes we can do that, but also I don't know why some of these provides
are done in the main package; and some are done in meta; and some are
dynamic. But indeed, I would accept hardcoding it, even in all the
stable series at this point. Because right now it is one more thing to
replace flavour name in, every single time.

Probably should go into the top levels.

> ...Juerg
>
>
> > -Andrea
> >
> > >
> > >
> > > John
> > >
> > > >
> > > > This provides is not to do with DKMS at all, but with the fact that we
> > > > have userspace packages in the archive that depend on
> > > > wirebuard-modules, if a kernel doesn't provide such provides, it will
> > > > cause wireguard package installation to pull in a random kernel
> > > > flavour. Usually linux-oracle.
> > > >
> > > > Separately we can change this to a static provides at this point,
> > > > since wireguard module version is unchanging. Also userspace packages
> > > > dropped depends on such a module too, thus this can be finally removed
> > > > completely in 24.10, after we stop backporting kernels to Jammy which
> > > > still must have wireguard-modules provides.
> > > >
> > > >>
> > > >>
> > > >> Signed-off-by: John Cabaj <john.cabaj at canonical.com>
> > > >> ---
> > > >>  debian/rules | 6 ------
> > > >>  1 file changed, 6 deletions(-)
> > > >>
> > > >> diff --git a/debian/rules b/debian/rules
> > > >> index e20511f..c39adca 100755
> > > >> --- a/debian/rules
> > > >> +++ b/debian/rules
> > > >> @@ -72,11 +72,6 @@ $(foreach _line,$(shell gawk '{ OFS = "!"; $$1 = $$1; print }' debian/dkms-versi
> > > >>    ) \
> > > >>  )
> > > >>  dkms_virtualbox_version=$(KERNEL_ABI_VERSION)
> > > >> -ifeq ($(wildcard /lib/modules/$(KERNEL_ABI_VERSION)-generic/kernel/drivers/net/wireguard/wireguard.ko.zst),)
> > > >> -       dkms_wireguard_version := $(shell /sbin/modinfo -F version /lib/modules/$(KERNEL_ABI_VERSION)-generic/kernel/drivers/net/wireguard/wireguard.ko)
> > > >> -else
> > > >> -       dkms_wireguard_version := $(shell /sbin/modinfo -F version /lib/modules/$(KERNEL_ABI_VERSION)-generic/kernel/drivers/net/wireguard/wireguard.ko.zst)
> > > >> -endif
> > > >>
> > > >>  debian/control.d/dkms-%: module = $(patsubst debian/control.d/dkms-%,%,$@)
> > > >>  debian/control.d/dkms-%: module_archs = $(dkms_$(patsubst debian/control.d/dkms-%,%,$@)_archs)
> > > >> @@ -141,7 +136,6 @@ gencontrol_flags += \
> > > >>      ) \
> > > >>    )
> > > >>  gencontrol_flags += -Vdkms:virtualbox-guest-modules="virtualbox-guest-modules (= $(dkms_virtualbox_version)),"
> > > >> -gencontrol_flags += -Vdkms:wireguard-linux-compat-modules="wireguard-modules (= $(dkms_wireguard_version)),"
> > > >>
> > > >>  build-%:
> > > >>         :
> > > >> --
> > > >> 2.34.1
> > > >>
> > > >>
> > > >> --
> > > >> kernel-team mailing list
> > > >> kernel-team at lists.ubuntu.com
> > > >> https://lists.ubuntu.com/mailman/listinfo/kernel-team
> > > >
> > > >
> > > >
> > >
> > >
> > > --
> > > kernel-team mailing list
> > > kernel-team at lists.ubuntu.com
> > > https://lists.ubuntu.com/mailman/listinfo/kernel-team
> >
>
> --
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



-- 
okurrr,

Dimitri



More information about the kernel-team mailing list