Closed thomas-zimmerman closed 1 year ago
With no update to our kernel packaging, this can be worked around with a virtual package as done here: https://github.com/thehunmonkgroup/wireguard-modules-virtual
Background investigation:
The wg
command is part of wireguard-tools
.
wireguard-tools
attempts to change the kernel version to an Ubuntu realtime kernel that presumably declares this support.wireguard
metapackage (which is not actually needed, but other software might depend on) pulls in wireguard-dkms
in addition to wireguard-tools
(but does not attempt to change the kernel version); the wireguard-dkms
package actually doesn't "fail" to build, but the output indicates that it doesn't actually build because our kernel version is not whitelisted in its BUILD_EXCLUSIVE
directive.wireguard
plus wireguard-modules
lists a number of Ubuntu kernel packages that provide wireguard-modules
.While the issue had an easy workaround of installing wireguard-dkms
and letting it skip the build since it isn't needed, the kernel package is clearly supposed to provide wireguard-modules
if it supports WireGuard.
I do see we also provide virtualbox-guest-modules
in the versioned package while realtime provides it as part of the metapackage, and that is presumably working, so that may not be related to the issue. (It should theoretically work if provided by any installed package.)
55f60b4 now has a duplicate
Provides
, that is incorrect
linux-image-generic
and linux-image-6.2.6-76060206-generic
both only have one Provides:
, what are you talking about?
We can move the Provides:
back to the latter package if you want, but there is no duplicate.
oops never mind
It's still not working on 55f60b4c995f474651c0b7949819da1d7732a02e (wireguard(-tools)
still tries to bring in wireguard-dkms
or other kernels.) Something else must be going on.
Doing an apt download linux-image-generic
and examining the control file for version ~55f60b4 shows no Provides:
line.
linux-image-6.2.6-76060206-generic
does have a Provides:
line (with all of the listed packages present, but in a different order than they appear in the debian/control
source code.) I wonder how the control file's getting parsed during a build.
You have to do a fakeroot debian/rules clean
to ensure the templates are synced with the automatically generated debian files.
@thomas-zimmerman @jacobgkau if you want, I can force push this with a commit that does the change the right way.
The right way would be to add the Provides line in debian.master/control.stub.in, then do fakeroot debian/rules clean
, which updates debian/control.
@jackpot51 I did it the way you described. The change in debian/control
looks identical after running that command, but debian.master/control.stub.in
now reflects the change as well.
I see now where the versioned package's Provides=
are being set in debian.master/control.d/vars.generic
, too.
I got done building d824cd4 locally and it looks like it should work, once the build server is done. (Feel free to force-push if you see something else that's still wrong, though.)
Updates packaging information to note for the
wireguard
package that wireguard kernel support is present.