pop-os / linux

Pop!_OS fork of https://launchpad.net/ubuntu/+source/linux
Other
110 stars 14 forks source link

Update debian control file for wireguard #243

Closed thomas-zimmerman closed 1 year ago

thomas-zimmerman commented 1 year ago

Updates packaging information to note for the wireguard package that wireguard kernel support is present.

thomas-zimmerman commented 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

jacobgkau commented 1 year ago

Background investigation:

The wg command is part of wireguard-tools.

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.

jacobgkau commented 1 year ago

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.)

13r0ck commented 1 year ago

55f60b4 now has a duplicate Provides, that is incorrect

jacobgkau commented 1 year ago

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.

13r0ck commented 1 year ago

oops never mind

jacobgkau commented 1 year ago

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.

jacobgkau commented 1 year ago

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.

jackpot51 commented 1 year ago

You have to do a fakeroot debian/rules clean to ensure the templates are synced with the automatically generated debian files.

jackpot51 commented 1 year ago

@thomas-zimmerman @jacobgkau if you want, I can force push this with a commit that does the change the right way.

jackpot51 commented 1 year ago

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.

jacobgkau commented 1 year ago

@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.)