Bug#1010883: dkms breaks nvidia-graphics-drivers autopkgtest on arm64: unmet dependencies

Andreas Beckmann anbe at debian.org
Thu May 26 09:58:23 BST 2022


Control: reopen -1
Control: reassign -1 dkms 3.0.3-1
Control: retitle -1 dkms: autopkgtest mixes headers from sid and testing

> The following packages have unmet dependencies:
>  linux-headers-5.17.0-2-arm64 : Depends: linux-kbuild-5.17 (>= 
> 5.17.6-1) but 5.17.3-1 is to be installed
>  linux-headers-5.17.0-2-cloud-arm64 : Depends: linux-kbuild-5.17 (>= 
> 5.17.6-1) but 5.17.3-1 is to be installed
>  linux-headers-5.17.0-2-rt-arm64 : Depends: linux-kbuild-5.17 (>= 
> 5.17.6-1) but 5.17.3-1 is to be installed

As this still shows up in amd64 and after the latest kernel packages got 
installable again in sid, I have another guess what might be happening 
here [, but I fail to verify that locally -- not any more ;-)].

I'm concentrating on r8168 since that is a more lightweight package than 
the nvidia drivers (but still in non-free)
https://ci.debian.net/data/autopkgtest/testing/amd64/r/r8168/22093828/log.gz

My guess is that apt pinning comes into play here, installing
linux-headers-5.17.0-1-amd64 from testing and
linux-headers-5.17.0-2-amd64 from sid both need linux-kbuild-5.17, but 
the testing version gets selected due to a higher score after pinning, 
but that is not sufficient for the headers from sid.

I tried with the following command line distilled from above log from r8168:

autopkgtest --ignore-restrictions=breaks-testbed  --no-built-binaries 
--apt-upgrade --add-apt-release=unstable 
--pin-packages=unstable=src:dkms --output-dir /tmp/ci-out.$(date +%s) 
r8168 -- schroot autopkgtest-bookworm-amd64

--ignore-restrictions=breaks-testbed on schroot is fine here since 
schroot provides enough isolation for "autopkgtests installing random 
packages"

Unfortunately the pinning does not work here - the full chroot is 
upgraded to unstable first. I'm probably missing some default pinning 
settings here ...

OK, adding --apt-default-release=bookworm makes it work and reproduces 
the error :-) Why is that not needed with the ci chroots?

BTW, /usr/share/autopkgtest/lib/adt_testbed.py run_setup_commands 
(add_apt_releases) has two issues I needed to work around in my chroot:
* it expects /etc/apt/sources.list to exist (I only had 
sources.list.d/bookworm.list)
* it does not cope with tabs instead of spaces as separators

The fix on the dkms side is probably to only select the linux-headers-* 
packages for installation that match the version of the installed 
linux-doc (that's a dependency generated by autodep8). Checking that 
tonight.

Andreas



More information about the pkg-nvidia-devel mailing list