diff -Nru linux-restricted-modules-5.4.0/debian/changelog linux-restricted-modules-5.4.0/debian/changelog --- linux-restricted-modules-5.4.0/debian/changelog 2021-03-19 12:01:49.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/changelog 2021-04-07 14:06:26.000000000 +0000 @@ -1,3 +1,20 @@ +linux-restricted-modules (5.4.0-71.79+1) focal; urgency=medium + + * LRMv4: switch to signing nvidia modules via the Ubuntu Modules signing key + (LP: #1918134) + - [Packaging] convert to v4 autogen form + + -- Stefan Bader Wed, 07 Apr 2021 16:06:26 +0200 + +linux-restricted-modules (5.4.0-71.79) focal; urgency=medium + + * Master version: 5.4.0-71.79 + + * Miscellaneous Ubuntu changes + - debian/dkms-versions -- update from master + + -- Kleber Sacilotto de Souza Wed, 24 Mar 2021 11:29:19 +0100 + linux-restricted-modules (5.4.0-70.78) focal; urgency=medium * Master version: 5.4.0-70.78 diff -Nru linux-restricted-modules-5.4.0/debian/control linux-restricted-modules-5.4.0/debian/control --- linux-restricted-modules-5.4.0/debian/control 2021-03-19 12:01:49.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/control 2021-04-07 14:06:26.000000000 +0000 @@ -9,10 +9,8 @@ curl, dkms, gawk, - linux-headers-5.4.0-70-generic (>= 5.4.0-70.78) [amd64], - linux-buildinfo-5.4.0-70-generic (>= 5.4.0-70.78) [amd64], - linux-headers-5.4.0-70-lowlatency (>= 5.4.0-70.78) [amd64], - linux-buildinfo-5.4.0-70-lowlatency (>= 5.4.0-70.78) [amd64], + linux-headers-5.4.0-71-generic (>= 5.4.0-71.79) [amd64], + linux-headers-5.4.0-71-lowlatency (>= 5.4.0-71.79) [amd64], lsb-release, python3, python3-apt, @@ -47,7 +45,6 @@ Description: Extra drivers for nvidia-418-oem-osp1 (dummy transitional package) Transitional package for upgrades of 418-oem-osp1 to 440-generic. - Package: linux-modules-nvidia-390-generic Build-Profiles: Architecture: amd64 @@ -55,8 +52,8 @@ Provides: ${dkms:nvidia-390-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-390-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-390} + linux-modules-nvidia-390-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-390}, Description: Extra drivers for nvidia-390 for the generic flavour Install extra signed nvidia-390 modules compatible with the generic flavour. @@ -67,8 +64,8 @@ Provides: ${dkms:nvidia-450-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-450-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-450} + linux-modules-nvidia-450-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-450}, Description: Extra drivers for nvidia-450 for the generic flavour Install extra signed nvidia-450 modules compatible with the generic flavour. @@ -79,8 +76,8 @@ Provides: ${dkms:nvidia-460-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-460-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-460} + linux-modules-nvidia-460-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-460}, Description: Extra drivers for nvidia-460 for the generic flavour Install extra signed nvidia-460 modules compatible with the generic flavour. @@ -91,8 +88,8 @@ Provides: ${dkms:nvidia-418-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-418-server-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-418-server} + linux-modules-nvidia-418-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-418-server}, Description: Extra drivers for nvidia-418-server for the generic flavour Install extra signed nvidia-418-server modules compatible with the generic flavour. @@ -103,8 +100,8 @@ Provides: ${dkms:nvidia-450-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-450-server-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-450-server} + linux-modules-nvidia-450-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-450-server}, Description: Extra drivers for nvidia-450-server for the generic flavour Install extra signed nvidia-450-server modules compatible with the generic flavour. @@ -115,8 +112,8 @@ Provides: ${dkms:nvidia-460-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-460-server-5.4.0-70-generic (= ${binary:Version}), - ${nvk:nvidia-460-server} + linux-modules-nvidia-460-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-460-server}, Description: Extra drivers for nvidia-460-server for the generic flavour Install extra signed nvidia-460-server modules compatible with the generic flavour. @@ -127,8 +124,8 @@ Provides: ${dkms:nvidia-390-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-390-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-390} + linux-modules-nvidia-390-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-390}, Description: Extra drivers for nvidia-390 for the lowlatency flavour Install extra signed nvidia-390 modules compatible with the lowlatency flavour. @@ -139,8 +136,8 @@ Provides: ${dkms:nvidia-450-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-450-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-450} + linux-modules-nvidia-450-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-450}, Description: Extra drivers for nvidia-450 for the lowlatency flavour Install extra signed nvidia-450 modules compatible with the lowlatency flavour. @@ -151,8 +148,8 @@ Provides: ${dkms:nvidia-460-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-460-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-460} + linux-modules-nvidia-460-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-460}, Description: Extra drivers for nvidia-460 for the lowlatency flavour Install extra signed nvidia-460 modules compatible with the lowlatency flavour. @@ -163,8 +160,8 @@ Provides: ${dkms:nvidia-418-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-418-server-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-418-server} + linux-modules-nvidia-418-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-418-server}, Description: Extra drivers for nvidia-418-server for the lowlatency flavour Install extra signed nvidia-418-server modules compatible with the lowlatency flavour. @@ -175,8 +172,8 @@ Provides: ${dkms:nvidia-450-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-450-server-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-450-server} + linux-modules-nvidia-450-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-450-server}, Description: Extra drivers for nvidia-450-server for the lowlatency flavour Install extra signed nvidia-450-server modules compatible with the lowlatency flavour. @@ -187,12 +184,11 @@ Provides: ${dkms:nvidia-460-server-modules}, nvidia-prebuilt-kernel Depends: ${misc:Depends}, - linux-modules-nvidia-460-server-5.4.0-70-lowlatency (= ${binary:Version}), - ${nvk:nvidia-460-server} + linux-modules-nvidia-460-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-460-server}, Description: Extra drivers for nvidia-460-server for the lowlatency flavour Install extra signed nvidia-460-server modules compatible with the lowlatency flavour. - Package: linux-modules-nvidia-440-generic Architecture: amd64 Section: oldlibs @@ -263,8 +259,7 @@ Description: Extra drivers for nvidia-440-server for the lowlatency flavour (dummy transitional package) Transitional package for upgrades of -440-server to -450-server. - -Package: linux-modules-nvidia-390-5.4.0-70-generic +Package: linux-objects-nvidia-390-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -274,16 +269,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-390-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-390-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-390-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-390}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-390-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-450-5.4.0-70-generic +Package: linux-objects-nvidia-450-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -293,16 +309,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-450-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-460-5.4.0-70-generic +Package: linux-modules-nvidia-450-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-450-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-450}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-450-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-objects-nvidia-460-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -312,16 +349,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-460-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-460-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-460-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-460}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-460-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-418-server-5.4.0-70-generic +Package: linux-objects-nvidia-418-server-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -331,16 +389,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-418-server-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-418-server-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-418-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-418-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-418-server-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-450-server-5.4.0-70-generic +Package: linux-objects-nvidia-450-server-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -350,16 +429,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-450-server-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-460-server-5.4.0-70-generic +Package: linux-modules-nvidia-450-server-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-450-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-450-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-450-server-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-objects-nvidia-460-server-5.4.0-71-generic Build-Profiles: Architecture: amd64 Section: kernel @@ -369,16 +469,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-generic | linux-image-unsigned-5.4.0-70-generic, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-460-server-generic* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-390-5.4.0-70-lowlatency +Package: linux-modules-nvidia-460-server-5.4.0-71-generic +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-generic | linux-image-unsigned-5.4.0-71-generic, + linux-signatures-nvidia-5.4.0-71-generic (= 5.4.0-71.79+1), + linux-objects-nvidia-460-server-5.4.0-71-generic (= ${binary:Version}), + ${nvk:nvidia-460-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-460-server-generic* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-objects-nvidia-390-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -388,16 +509,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-390-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-390-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-390-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-390}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-390-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-450-5.4.0-70-lowlatency +Package: linux-objects-nvidia-450-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -407,16 +549,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-450-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-460-5.4.0-70-lowlatency +Package: linux-modules-nvidia-450-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-450-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-450}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-450-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-objects-nvidia-460-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -426,16 +589,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-460-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-460-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-460-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-460}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-460-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-418-server-5.4.0-70-lowlatency +Package: linux-objects-nvidia-418-server-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -445,16 +629,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-418-server-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-450-server-5.4.0-70-lowlatency +Package: linux-modules-nvidia-418-server-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-418-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-418-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-418-server-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-objects-nvidia-450-server-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -464,16 +669,37 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-450-server-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-450-server-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-450-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-450-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-450-server-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. -Package: linux-modules-nvidia-460-server-5.4.0-70-lowlatency +Package: linux-objects-nvidia-460-server-5.4.0-71-lowlatency Build-Profiles: Architecture: amd64 Section: kernel @@ -483,13 +709,32 @@ ${misc:Depends}, ${shlibs:Depends}, binutils, - linux-image-5.4.0-70-lowlatency | linux-image-unsigned-5.4.0-70-lowlatency, -Description: Linux kernel nvidia modules for version 5.4.0-70 - This package contains the Linux kernel nvidia modules for version 5.4.0-70. +Description: Linux kernel nvidia modules for version 5.4.0-71 (objects) + This package contains the Linux kernel nvidia modules for version 5.4.0-71. . You likely do not want to install this package directly. Instead, install the one of the linux-modules-nvidia-460-server-lowlatency* meta-packages, which will ensure that upgrades work correctly, and that supporting packages are also installed. - +Package: linux-modules-nvidia-460-server-5.4.0-71-lowlatency +Build-Profiles: +Architecture: amd64 +Section: kernel +Priority: optional +Built-Using: ${linux:BuiltUsing} +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + linux-image-5.4.0-71-lowlatency | linux-image-unsigned-5.4.0-71-lowlatency, + linux-signatures-nvidia-5.4.0-71-lowlatency (= 5.4.0-71.79+1), + linux-objects-nvidia-460-server-5.4.0-71-lowlatency (= ${binary:Version}), + ${nvk:nvidia-460-server}, +Description: Linux kernel nvidia modules for version 5.4.0-71 + This package pulls together the Linux kernel nvidia modules for + version 5.4.0-71 with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-460-server-lowlatency* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. diff -Nru linux-restricted-modules-5.4.0/debian/dkms-versions linux-restricted-modules-5.4.0/debian/dkms-versions --- linux-restricted-modules-5.4.0/debian/dkms-versions 2021-03-19 11:52:19.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/dkms-versions 2021-04-07 13:53:23.000000000 +0000 @@ -1,9 +1,9 @@ zfs-linux 0.8.3-1ubuntu12.6 nvidia-graphics-drivers-390 390.141-0ubuntu0.20.04.1 -nvidia-graphics-drivers-450 450.102.04-0ubuntu0.20.04.1 transition=nvidia-graphics-drivers-440 transition=nvidia-graphics-drivers-430 -nvidia-graphics-drivers-460 460.39-0ubuntu0.20.04.1 transition=nvidia-graphics-drivers-455 transition=nvidia-graphics-drivers-435 -nvidia-graphics-drivers-418-server 418.181.07-0ubuntu0.20.04.1 -nvidia-graphics-drivers-450-server 450.102.04-0ubuntu0.20.04.1 transition=nvidia-graphics-drivers-440-server -nvidia-graphics-drivers-460-server 460.32.03-0ubuntu0.20.04.1 +nvidia-graphics-drivers-450 450.102.04-0ubuntu0.20.04.2 transition=nvidia-graphics-drivers-440 transition=nvidia-graphics-drivers-430 +nvidia-graphics-drivers-460 460.56-0ubuntu0.20.04.1 transition=nvidia-graphics-drivers-455 transition=nvidia-graphics-drivers-435 +nvidia-graphics-drivers-418-server 418.181.07-0ubuntu0.20.04.2 +nvidia-graphics-drivers-450-server 450.102.04-0ubuntu0.20.04.2 transition=nvidia-graphics-drivers-440-server +nvidia-graphics-drivers-460-server 460.32.03-0ubuntu0.20.04.2 virtualbox 6.1.16-dfsg-6~ubuntu1.20.04.1 wireguard-linux-compat 1.0.20201112-1~20.04.1 diff -Nru linux-restricted-modules-5.4.0/debian/rules.in linux-restricted-modules-5.4.0/debian/rules.in --- linux-restricted-modules-5.4.0/debian/rules.in 2021-03-17 16:31:07.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/rules.in 2021-04-07 13:53:23.000000000 +0000 @@ -1,18 +1,7 @@ -#! /usr/bin/make -f - ##export DH_VERBOSE := 1 arch = $(shell dpkg-architecture -qDEB_HOST_ARCH) -# Work out the source package name and version. The version -# is identical to this package less any rebuild suffix (+lrmN). -src_package := $(shell LC_ALL=C dpkg-parsechangelog -SSource) -src_fullversion = $(shell LC_ALL=C dpkg-parsechangelog -SVersion) -src_abi = $(shell echo "$(src_fullversion)" | sed -ne 's/\([0-9]*\.[0-9]*\.[0-9]*\-[0-9]*\)\..*/\1/p') -src_version = $(shell echo $(src_fullversion) | sed -e 's/+[0-9][0-9]*$$//') -src_series = $(shell dpkg-parsechangelog -SDistribution | sed -e 's/-\(security\|updates\|proposed\)$$//') -src_kernel = $(shell echo "$(src_package)" | sed -e 's/restricted-modules-//') - # Get variants, assuming primary if debian/variants is not present variants = -- ifneq (,$(wildcard debian/variants)) @@ -28,7 +17,7 @@ control_files += $(filter-out $(primary_control_files),$(shell LC_ALL=C ls -d debian/control.d/*)) test:: - echo "$(src_fullversion) $(src_version)" + echo "$(src_version) $(src_main_version)" # We build our control file. This has to be done before dh runs otherwise # we have no binary files and we will not run the appropriate targets. @@ -44,34 +33,31 @@ -e "s/\$${variant:suffix}/$$variant/g" \ -e "s/\(\$${$(tp_key)[^}]*}\)/$${variant_first:+\1}/g" \ <$$i; \ - echo ""; \ variant_first=''; \ done; \ else \ cat $$i; \ - echo ""; \ fi; \ done | sed \ -e "/@BUILD-INTERLOCK@/{" \ - -e " r debian/control.gen" \ + -e " r debian/control.interlock-up" \ -e " d" \ -e " }" \ | sed \ - -e "s/\(\$${$(tp_key)\([^}]*\)}\)/kernel-testing--$(src_kernel)-\1-\2,/g" \ + -e "s/\(\$${$(tp_key)\([^}]*\)}\)/kernel-testing--$(src_main_package)-\1-\2,/g" \ -e "s/@SRCPKGNAME@/$(src_package)/g" \ -e "s/@ABI@/$(src_abi)/g" \ - -e "s/@VERSION@/$(src_version)/g" \ + -e "s/@VERSION@/$(src_main_version)/g" \ -e "s/@SERIES@/$(src_series)/g" \ >debian/control.tmp rm -f debian/control mv debian/control.tmp debian/control - rm -rf ./$(src_version) UNSIGNED SIGNED + rm -rf ./$(src_main_version) UNSIGNED SIGNED rm -f debian/linux-modules-*.install \ debian/linux-modules-*.preinst \ debian/linux-modules-*.prerm \ debian/linux-modules-*.postinst \ debian/linux-modules-*.postrm - rm -rf $(dkms_dir) .PHONY: pre-clean @@ -79,6 +65,8 @@ $(CC) -o $@ $^ clean:: pre-clean + rm -f debian/scripts/fix-filenames + rm -rf $(dkms_dir) %: dh $@ diff -Nru linux-restricted-modules-5.4.0/debian/rules.lrg linux-restricted-modules-5.4.0/debian/rules.lrg --- linux-restricted-modules-5.4.0/debian/rules.lrg 1970-01-01 00:00:00.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/rules.lrg 2021-04-07 13:53:23.000000000 +0000 @@ -0,0 +1,31 @@ +##export DH_VERBOSE := 1 + +arch = $(shell dpkg-architecture -qDEB_HOST_ARCH) + +test:: + echo "$(src_version) $(src_main_version)" + +debian/scripts/fix-filenames: debian/scripts/fix-filenames.c + $(CC) -o $@ $^ + +clean:: + rm -rf rm -rf $(dkms_dir) + rm -f debian/scripts/fix-filenames + +%: + dh $@ + +custom_top=debian/custom +custom_dir=$(custom_top)/$(src_version) +custom_tar=$(src_package)_$(src_version)_$(arch).tar.gz +custom-upload: + install -d $(custom_dir)/control + { echo "tarball"; echo "signed-only"; } >$(custom_dir)/control/options + cd $(custom_top) && tar czvf ../../../$(custom_tar) . + dpkg-distaddfile $(custom_tar) raw-signing - + +override_dh_prep: debian/scripts/fix-filenames + dh_prep + +override_dh_auto_install: nvidia-$(arch) custom-upload + dh_install diff -Nru linux-restricted-modules-5.4.0/debian/rules.lrs linux-restricted-modules-5.4.0/debian/rules.lrs --- linux-restricted-modules-5.4.0/debian/rules.lrs 1970-01-01 00:00:00.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/rules.lrs 2021-04-07 13:53:23.000000000 +0000 @@ -0,0 +1,12 @@ +##export DH_VERBOSE := 1 + +arch = $(shell dpkg-architecture -qDEB_HOST_ARCH) + +%: + dh $@ + +override_dh_auto_build: + ./download-signed "$(src_genr_package)" "$(src_genr_version)" "$(src_genr_package)" + +override_dh_auto_install: nvidia-$(arch) + dh_install diff -Nru linux-restricted-modules-5.4.0/debian/scripts/dkms-build--nvidia-N linux-restricted-modules-5.4.0/debian/scripts/dkms-build--nvidia-N --- linux-restricted-modules-5.4.0/debian/scripts/dkms-build--nvidia-N 2021-03-19 11:52:19.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/scripts/dkms-build--nvidia-N 2021-04-07 13:53:23.000000000 +0000 @@ -35,54 +35,57 @@ ) # Install the support files we need. -cp "$srcdir/scripts/module-common.lds" "$pkgdir/bits/scripts" -grep /usr/bin/ld.bfd "$log" | sed -e "s@$build/@@g" >"$pkgdir/bits/BUILD" -grep /usr/bin/ld.bfd "$log" | sed -e "s@$build/@@g" \ - -e 's/.*-o *\([^ ]*\) .*/rm -f \1/g' >"$pkgdir/bits/CLEAN" +echo "II: copying support files ..." +for lds_src in \ + "$dkms_dir/headers/linux-headers-$abi_flavour/scripts/module.lds" \ + "/usr/src/linux-headers-$abi_flavour/scripts/module.lds" \ + "$dkms_dir/headers/linux-headers-$abi_flavour/scripts/module-common.lds" \ + "/usr/src/linux-headers-$abi_flavour/scripts/module-common.lds" +do + [ ! -f "$lds_src" ] && continue + echo "II: copying support files ... found $lds_src" + cp "$lds_src" "$pkgdir/bits/scripts" + break +done + +# Build helper scripts. +cat - <<'EOL' >"$pkgdir/bits/BUILD" +[ "$1" = "unsigned" ] && { signed_only=:; shift; } +[ "$1" = "nocheck" ] && { check_only=:; shift; } +EOL +grep /usr/bin/ld.bfd "$log" | grep -v scripts/genksyms/genksyms | sed -e "s@$build/@@g" >>"$pkgdir/bits/BUILD" +sed -e 's/.*-o *\([^ ]*\) .*/rm -f \1/g' <"$pkgdir/bits/BUILD" >"$pkgdir/bits/CLEAN" # As the builds contain the absolute filenames as used. Use RECONSTRUCT to # rebuild the .ko's, sign them, pull off the signatures and then finally clean # up again. ( cd "$pkgdir/bits" || exit 1 - sh ./CLEAN - sh ./BUILD - for ko in *.ko + + # Add checksum check. + echo "\$check_only sha256sum -c SHA256SUMS || exit 1" >>"$pkgdir/bits/BUILD" + + # Add .ko handling to the CLEAN/BUILD dance. + for ko in "$pkgdir"/*.ko do - echo "cat '$ko' '$ko.sig' >'../$ko'" >>"$pkgdir/bits/BUILD" - echo "rm -f '$ko'" >>"$pkgdir/bits/BUILD" + ko=$(basename "$ko") + echo "\$signed_only cat '$ko' '$ko.sig' >'../$ko'" >>"$pkgdir/bits/BUILD" + echo "\$signed_only rm -f '$ko'" >>"$pkgdir/bits/BUILD" echo "rm -f '../$ko'" >>"$pkgdir/bits/CLEAN" done + # Clear out anything we are not going to distribute and build unsigned .kos. + sh ./CLEAN + sh ./BUILD unsigned nocheck + if [ "$sign" = "--custom" ]; then # We are building for and archive custom signing upload. Keep everything. : elif [ "$sign" = "--lrm" ]; then - # We are in LRM build the package a copy in any signatures we can - # find for them. These will be added after linking. - base="/usr/lib/linux/$abi_flavour" - - # Check the GCC version we are using against that used in the kernel - # NOTE: that we treat this as only a warning, as if the binaries did come - # out differently then we will actually - echo "II: checking gcc version ..." - cat "$base/compiler" - gcc --version - gcc_was=$(cat "$base/compiler" | sed -e 's/^GCC:/gcc/') - gcc_is=$(gcc --version | head -1) - if [ "$gcc_was" != "$gcc_is" ]; then - echo "WW: gcc version missmatch between linux and linux-restricted-modules" - echo "WW: was: $gcc_was is: $gcc_is" - fi - - # Apply any local signatures. - echo "II: adding signatures from $base ..." - cp "$base/signatures/$package/"*".ko.sig" "$pkgdir/bits" - sha256sum -c "$base/signatures/$package/SHA256SUMS" || exit 1 + # We are in the LRM build; grab sha256 checksums and clean up. + sha256sum -b *.ko >"SHA256SUMS" sh ./CLEAN - sed -i '/objdump/d' ./BUILD - else # We are in the main kernel, put the .kos together as we will # on the users machine, sign them, and keep just the signature. diff -Nru linux-restricted-modules-5.4.0/debian/scripts/gen-rules linux-restricted-modules-5.4.0/debian/scripts/gen-rules --- linux-restricted-modules-5.4.0/debian/scripts/gen-rules 2021-03-17 16:31:07.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/scripts/gen-rules 2021-04-07 13:53:23.000000000 +0000 @@ -1,173 +1,10 @@ #!/bin/bash -mkdir -p "debian/control.d" -cat "debian/rules.in" >"debian/rules.gen" -: >"debian/control.gen" -: >"debian/control.d/meta-nvidia" -: >"debian/control.d/nvidia" -: >"debian/control.d/migrate-nvidia" -: >"debian/control.d/transitionals-local" +src_package=$(LC_ALL=C dpkg-parsechangelog -SSource) +case "$src_package" in +linux-restricted-generate*) pkg='lrg' ;; +linux-restricted-signature*) pkg='lrs' ;; +linux-restricted-modules*) pkg='lrm' ;; +esac -dkms_build_new=$(grep -c 'shift 7' debian/scripts/dkms-build) -if [ "$dkms_build_new" -eq 0 ]; then - sed -i -e '/debian\/scripts\/dkms-build/s/ $(4)//' debian/rules.gen -fi - -nvidia_desktop= -nvidia_server= -nvidia_ignore= -while read command arg -do - case "$command" in - option) ;; - suppress) nvidia_ignore="$nvidia_ignore $arg"; continue ;; - *) continue ;; - esac - - case "$arg" in - desktop) nvidia_desktop=y ;; - server) nvidia_server=y ;; - esac -done <"debian/package.config" - -while read command flavour archs -do - case "$command" in - build) ;; - *) continue ;; - esac - - targets=$(echo "$archs" | sed -e 's/\>"debian/control.gen" <= @VERSION@) [${archs}], - linux-buildinfo-@ABI@-${flavour} (>= @VERSION@) [${archs}], -EOL - - while read package version extra - do - case "$package" in - nvidia-graphics-drivers-*-server) - [ -z "$nvidia_server" ] && continue - ;; - nvidia-graphics-drivers-*) - [ -z "$nvidia_desktop" ] && continue - ;; - *) continue ;; - esac - case " $nvidia_ignore " in - *\ $package\ *) continue ;; - esac - - case " $extra " in - *\ signonly\ *) continue ;; - esac - - suffix_minus=$(echo "$package" | sed -e 's/nvidia-graphics-drivers-//') - suffix_under=$(echo "$suffix_minus" | sed -e 's/-/_/g') - suffix_short=$(echo "$suffix_minus" | sed -e 's/-server/srv/g') - - echo "II: build $package for $flavour $archs" - - # debian/rules.gen - { - echo "" - #echo "# $package $version $suffix_minus $suffix_under" - echo "dkms_nvidia_${suffix_under}_version=\$(shell gawk '/^${package} / { print \$\$2; }' debian/dkms-versions)" - echo "nvidia_${suffix_under}_upstream_version=\$(shell echo \"\$(dkms_nvidia_${suffix_under}_version)\" | cut -d '-' -f 1)" - echo "gencontrol_flags += -Vdkms:nvidia-${suffix_minus}-modules=\"nvidia-dkms-${suffix_minus} (= \$(dkms_nvidia_${suffix_under}_version))\"" - echo "gencontrol_flags += -Vnvk:nvidia-${suffix_minus}=\"nvidia-kernel-common-${suffix_minus} (<= \$(nvidia_${suffix_under}_upstream_version)-1), nvidia-kernel-common-${suffix_minus} (>= \$(nvidia_${suffix_under}_upstream_version))\"" - echo "test::" - echo " @echo $package $version $suffix_minus $suffix_under $suffix_short $targets" - echo "$targets::" - echo " rm -rf \$(dkms_dir)/build \$(dkms_dir)/source" - echo " mkdir -p \$(dkms_dir)/build \$(dkms_dir)/source" - echo " install -d debian/linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour}" - echo " install -d debian/linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour}/usr/lib/linux/triggers" - echo " \$(call build_dkms, \$(src_abi)-${flavour}, linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour}, \$(CURDIR)/debian/linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour}/lib/modules/\$(src_abi)-${flavour}/kernel, \"\", nvidia-${suffix_short}, pool/restricted/n/nvidia-graphics-drivers-${suffix_minus}/nvidia-kernel-source-${suffix_minus}_\$(dkms_nvidia_${suffix_under}_version)_\$(arch).deb pool/restricted/n/nvidia-graphics-drivers-${suffix_minus}/nvidia-dkms-${suffix_minus}_\$(dkms_nvidia_${suffix_under}_version)_\$(arch).deb)" - echo " \$(call install_control,linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour},${flavour},nvidia,${suffix_short},postinst postrm prerm config templates)" - } >>"debian/rules.gen" - - # debian/control.d/meta-nvidia - cat - >>"debian/control.d/meta-nvidia" < -Architecture: ${archs} -Section: kernel -Provides: \${dkms:nvidia-${suffix_minus}-modules}, nvidia-prebuilt-kernel -Depends: - \${misc:Depends}, - linux-modules-nvidia-${suffix_minus}-@ABI@-${flavour} (= \${binary:Version}), - \${nvk:nvidia-${suffix_minus}} -Description: Extra drivers for nvidia-${suffix_minus} for the ${flavour}\${variant:suffix} flavour - Install extra signed nvidia-${suffix_minus} modules compatible with the ${flavour}\${variant:suffix} flavour. - -EOL - - # debian/control.d/nvidia - cat - >>"debian/control.d/nvidia" < -Architecture: ${archs} -Section: kernel -Priority: optional -Built-Using: \${linux:BuiltUsing} -Depends: - \${misc:Depends}, - \${shlibs:Depends}, - binutils, - linux-image-@ABI@-${flavour} | linux-image-unsigned-@ABI@-${flavour}, -Description: Linux kernel nvidia modules for version @ABI@ - This package contains the Linux kernel nvidia modules for version @ABI@. - . - You likely do not want to install this package directly. Instead, install the - one of the linux-modules-nvidia-${suffix_minus}-${flavour}* meta-packages, - which will ensure that upgrades work correctly, and that supporting packages are - also installed. - -EOL - # debian/control.d/migrate-nvidia - for cmd in $extra - do - case "$cmd" in - transition=*) - from="${cmd#transition=}" - from_minus=$(echo "$from" | sed -e 's/nvidia-graphics-drivers-//') - echo "II: general transition $from -> $package ($from_minus -> $suffix_minus)" - cat - >>"debian/control.d/migrate-nvidia" < linux-modules-nvidia-$to" - cat - >>"debian/control.d/transitionals-local" < linux-restricted-modules-signatures -> linux-restricted-modules +src_package=$(LC_ALL=C dpkg-parsechangelog -SSource) +src_version=$(LC_ALL=C dpkg-parsechangelog -SVersion) +src_abi=$(echo "${src_version}" | sed -ne 's/\([0-9]*\.[0-9]*\.[0-9]*\-[0-9]*\)\..*/\1/p') +src_series=$(LC_ALL=C dpkg-parsechangelog -SDistribution | sed -e 's/-\(security\|updates\|proposed\)$//') + +# linux/5.8.0-41.46 +src_main_package=$(echo "${src_package}" | sed -e 's/-restricted-generate//') +src_main_version=$(echo ${src_version} | sed -e 's/+[0-9][0-9\.]*$//') + +# linux-restricted-generate/5.8.0-41.46[+1] + +# linux-restricted-signatures/5.8.0-41.46[+1] + +# linux-restricted-modules/5.8.0-41.46[+1] +src_lrm_package=$(echo "${src_package}" | sed -e 's/-restricted-generate/-restricted-modules/') +src_lrm_version=${src_version} + +cat - "debian/rules.lrg" >"debian/rules.gen" <"debian/control.interlock-up" + +nvidia_desktop= +nvidia_server= +nvidia_ignore= +while read command arg +do + case "$command" in + option) ;; + suppress) nvidia_ignore="$nvidia_ignore $arg"; continue ;; + *) continue ;; + esac + + case "$arg" in + desktop) nvidia_desktop=y ;; + server) nvidia_server=y ;; + esac +done <"debian/package.config" + +build_archs= +while read command flavour archs +do + case "$command" in + build) ;; + *) continue ;; + esac + + for arch in $archs + do + case " $build_archs " in + *\ $arch\ *) ;; + *) build_archs="$build_archs $arch" ;; + esac + done + + targets=$(echo "$archs" | sed -e 's/\>"debian/control.interlock-up" <= ${src_lrm_version}) [${archs}], +EOL + + # debian/rules.gen + # XXX: BUILD should help us here. + cat - >>"debian/rules.gen" <"debian/control" + +rm -f "debian/control.interlock-up" diff -Nru linux-restricted-modules-5.4.0/debian/scripts/gen-rules.lrm linux-restricted-modules-5.4.0/debian/scripts/gen-rules.lrm --- linux-restricted-modules-5.4.0/debian/scripts/gen-rules.lrm 1970-01-01 00:00:00.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/scripts/gen-rules.lrm 2021-04-07 13:53:23.000000000 +0000 @@ -0,0 +1,227 @@ +#!/bin/bash + +# Pick out relevant version and package information including our predecessor +# packages: linux -> linux-restricted-modules-signatures -> linux-restricted-modules +src_package=$(LC_ALL=C dpkg-parsechangelog -SSource) +src_version=$(LC_ALL=C dpkg-parsechangelog -SVersion) +src_abi=$(echo "${src_version}" | sed -ne 's/\([0-9]*\.[0-9]*\.[0-9]*\-[0-9]*\)\..*/\1/p') +src_series=$(LC_ALL=C dpkg-parsechangelog -SDistribution | sed -e 's/-\(security\|updates\|proposed\)$//') + +# linux/5.8.0-41.46 +src_main_package=$(echo "${src_package}" | sed -e 's/-restricted-modules//') +src_main_version=$(echo ${src_version} | sed -e 's/+[0-9][0-9\.]*$//') + +# linux-restricted-generate/5.8.0-41.46[+1] + +# linux-restricted-signatures/5.8.0-41.46[+1] +src_sigs_package=$(echo "${src_package}" | sed -e 's/-restricted-modules/-restricted-signatures/') +src_sigs_version=${src_version} + +# linux-restricted-modules/5.8.0-41.46[+1] + +mkdir -p "debian/control.d" +: >"debian/control.interlock-up" +: >"debian/control.d/meta-nvidia" +: >"debian/control.d/nvidia" +: >"debian/control.d/migrate-nvidia" +: >"debian/control.d/transitionals-local" +: >"debian/control.d/signatures" + +cat - "debian/rules.in" >"debian/rules.gen" <>"debian/control.interlock-up" <= @VERSION@) [${archs}], +EOL + + while read package version extra + do + case "$package" in + nvidia-graphics-drivers-*-server) + [ -z "$nvidia_server" ] && continue + ;; + nvidia-graphics-drivers-*) + [ -z "$nvidia_desktop" ] && continue + ;; + *) continue ;; + esac + case " $nvidia_ignore " in + *\ $package\ *) continue ;; + esac + + case " $extra " in + *\ signonly\ *) continue ;; + esac + + suffix_minus=$(echo "$package" | sed -e 's/nvidia-graphics-drivers-//') + suffix_under=$(echo "$suffix_minus" | sed -e 's/-/_/g') + suffix_short=$(echo "$suffix_minus" | sed -e 's/-server/srv/g') + + echo "II: build $package for $flavour $archs" + + # debian/rules.gen + cat - >>"debian/rules.gen" <= \$(nvidia_${suffix_under}_upstream_version))" +test:: + @echo $package $version $suffix_minus $suffix_under $suffix_short $targets +$targets:: + rm -rf \$(dkms_dir)/build \$(dkms_dir)/source + mkdir -p \$(dkms_dir)/build \$(dkms_dir)/source + install -d debian/linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour} + install -d debian/linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour}/usr/lib/linux/triggers + \$(call install_control,linux-modules-nvidia-${suffix_minus}-\$(src_abi)-${flavour},${flavour},nvidia,${suffix_short},postinst postrm prerm config templates) + install -d debian/linux-objects-nvidia-${suffix_minus}-\$(src_abi)-${flavour} + \$(call build_dkms, \$(src_abi)-${flavour}, linux-objects-nvidia-${suffix_minus}-\$(src_abi)-${flavour}, \$(CURDIR)/debian/linux-objects-nvidia-${suffix_minus}-\$(src_abi)-${flavour}/lib/modules/\$(src_abi)-${flavour}/kernel, "", nvidia-${suffix_short}, pool/restricted/n/nvidia-graphics-drivers-${suffix_minus}/nvidia-kernel-source-${suffix_minus}_\$(dkms_nvidia_${suffix_under}_version)_\$(arch).deb pool/restricted/n/nvidia-graphics-drivers-${suffix_minus}/nvidia-dkms-${suffix_minus}_\$(dkms_nvidia_${suffix_under}_version)_\$(arch).deb) +EOL + + # debian/control.d/meta-nvidia + cat - >>"debian/control.d/meta-nvidia" < +Architecture: ${archs} +Section: kernel +Provides: \${dkms:nvidia-${suffix_minus}-modules}, nvidia-prebuilt-kernel +Depends: + \${misc:Depends}, + linux-modules-nvidia-${suffix_minus}-${src_abi}-${flavour} (= \${binary:Version}), + \${nvk:nvidia-${suffix_minus}}, +Description: Extra drivers for nvidia-${suffix_minus} for the ${flavour}\${variant:suffix} flavour + Install extra signed nvidia-${suffix_minus} modules compatible with the ${flavour}\${variant:suffix} flavour. +EOL + + # debian/control.d/nvidia + cat - >>"debian/control.d/nvidia" < +Architecture: ${archs} +Section: kernel +Priority: optional +Built-Using: \${linux:BuiltUsing} +Depends: + \${misc:Depends}, + \${shlibs:Depends}, + binutils, +Description: Linux kernel nvidia modules for version ${src_abi} (objects) + This package contains the Linux kernel nvidia modules for version ${src_abi}. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-${suffix_minus}-${flavour}* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. + +Package: linux-modules-nvidia-${suffix_minus}-${src_abi}-${flavour} +Build-Profiles: +Architecture: ${archs} +Section: kernel +Priority: optional +Built-Using: \${linux:BuiltUsing} +Depends: + \${misc:Depends}, + \${shlibs:Depends}, + linux-image-${src_abi}-${flavour} | linux-image-unsigned-${src_abi}-${flavour}, + linux-signatures-nvidia-${src_abi}-${flavour} (= ${src_sigs_version}), + linux-objects-nvidia-${suffix_minus}-${src_abi}-${flavour} (= \${binary:Version}), + \${nvk:nvidia-${suffix_minus}}, +Description: Linux kernel nvidia modules for version ${src_abi} + This package pulls together the Linux kernel nvidia modules for + version ${src_abi} with the appropriate signatures. + . + You likely do not want to install this package directly. Instead, install the + one of the linux-modules-nvidia-${suffix_minus}-${flavour}* meta-packages, + which will ensure that upgrades work correctly, and that supporting packages are + also installed. +EOL + # debian/control.d/migrate-nvidia + for cmd in $extra + do + case "$cmd" in + transition=*) + from="${cmd#transition=}" + from_minus=$(echo "$from" | sed -e 's/nvidia-graphics-drivers-//') + echo "II: general transition $from -> $package ($from_minus -> $suffix_minus)" + cat - >>"debian/control.d/migrate-nvidia" < linux-modules-nvidia-$to" + cat - >>"debian/control.d/transitionals-local" < linux-restricted-signatures -> linux-restricted-modules +src_package=$(LC_ALL=C dpkg-parsechangelog -SSource) +src_version=$(LC_ALL=C dpkg-parsechangelog -SVersion) +src_abi=$(echo "${src_version}" | sed -ne 's/\([0-9]*\.[0-9]*\.[0-9]*\-[0-9]*\)\..*/\1/p') +src_series=$(LC_ALL=C dpkg-parsechangelog -SDistribution | sed -e 's/-\(security\|updates\|proposed\)$//') + +# linux/5.8.0-41.46 +src_main_package=$(echo "${src_package}" | sed -e 's/-restricted-signature//') +src_main_version=$(echo ${src_version} | sed -e 's/+[0-9][0-9\.]*$//') + +# linux-restricted-generate/5.8.0-41.46[+1] +src_genr_package=$(echo "${src_package}" | sed -e 's/-restricted-signatures/-restricted-generate/') +src_genr_version=${src_version} + +# linux-restricted-signatures/5.8.0-41.46[+1] + +# linux-restricted-modules/5.8.0-41.46[+1] + +cat - "debian/rules.lrs" >"debian/rules.gen" <"debian/control.interlock-up" + +build_archs= +while read command flavour archs +do + case "$command" in + build) ;; + *) continue ;; + esac + + for arch in $archs + do + case " $build_archs " in + *\ $arch\ *) ;; + *) build_archs="$buildarchs $arch" ;; + esac + done +done <"debian/package.config" + +while read command flavour archs +do + case "$command" in + build) ;; + *) continue ;; + esac + + targets=$(echo "$archs" | sed -e 's/\>"debian/rules.gen" <>debian/linux-signatures-nvidia-${src_abi}-${flavour}.install; \ + done +EOL + + cat - >>"debian/control.signatures" < +Architecture: ${archs} +Section: kernel +Priority: optional +Depends: linux-image-${src_abi}-${flavour} | linux-image-unsigned-${src_abi}-${flavour}, +Built-Using: \${linux:BuiltUsing} +Description: Linux kernel signatures for nvidia modules for version ${src_abi}-${flavour} + This package contains the Linux kernel signatures nvidia modules for + version ${src_abi}-${flavour}. + . + You likely do not want to install this package directly. +EOL +done <"debian/package.config" + +cat "debian/control.common" "debian/control.signatures" | sed \ + -e "/@BUILD-INTERLOCK@/{" \ + -e " r debian/control.interlock-up" \ + -e " d" \ + -e " }" \ + -e "s/@SRCPKGNAME@/${src_package}/g" \ + -e "s/@ABI@/${src_abi}/g" \ + -e "s/@SERIES@/${src_series}/g" \ + >"debian/control" + +rm -f "debian/control.interlock-up" "debian/control.signatures" diff -Nru linux-restricted-modules-5.4.0/debian/source/options linux-restricted-modules-5.4.0/debian/source/options --- linux-restricted-modules-5.4.0/debian/source/options 2021-03-17 16:31:07.000000000 +0000 +++ linux-restricted-modules-5.4.0/debian/source/options 2021-04-07 13:53:23.000000000 +0000 @@ -3,4 +3,4 @@ tar-ignore tar-ignore debian/control.d tar-ignore debian/rules.gen -tar-ignore debian/control.gen +tar-ignore debian/control.interlock-up diff -Nru linux-restricted-modules-5.4.0/download-signed linux-restricted-modules-5.4.0/download-signed --- linux-restricted-modules-5.4.0/download-signed 1970-01-01 00:00:00.000000000 +0000 +++ linux-restricted-modules-5.4.0/download-signed 2021-04-07 13:53:23.000000000 +0000 @@ -0,0 +1,183 @@ +#! /usr/bin/python3 + +import hashlib +import argparse +import os +import re +import sys +import tarfile +from urllib import request +from urllib.error import HTTPError +from urllib.parse import ( + urlparse, + urlunparse, + ) + +import apt + +# package_name: package containing the objects we signed +# package_version: package version containing the objects we signed +# src_package: source package name in dists +# signed_type: 'signed' or 'uefi' schema in the url + +parser = argparse.ArgumentParser() +parser.add_argument( + "package_name", + help="package containining the objects we signed") +parser.add_argument( + "package_version", + help="package version containing the objects we signed, or 'current'") +parser.add_argument( + "src_package", + help="source package name in dists") +parser.add_argument( + "signed_type", + nargs='?', + default='signed', + help="subdirectory type in the url, 'signed' or 'uefi'") +args = parser.parse_args() + + +class SignedDownloader: + """Download a block of signed information from dists. + + Find a block of signed information as published in dists/*/signed + and download the contents. Use the contained checksum files to + identify the members and to validate them once downloaded. + """ + + def __init__(self, package_name, package_version, src_package, signed_type='signed'): + self.package_name = package_name + self.package_version = package_version + self.src_package = src_package + + # Find the package in the available archive repositories. Use a _binary_ + # package name and version to locate the appropriate archive. Then use the + # URI there to look for and find the appropriate binary. + cache = apt.Cache() + + self.package = None + if self.package_version == "current": + self.package = cache[package_name].candidate + else: + for version in cache[package_name].versions: + if version.version == self.package_version: + self.package = version + break + + if not self.package: + raise KeyError("{0}: package version not found".format(self.package_name)) + + origin = self.package.origins[0] + pool_parsed = urlparse(self.package.uri) + self.package_dir = "%s/%s/%s/%s-%s/%s/" % ( + origin.archive, 'main', signed_type, + self.src_package, self.package.architecture, self.package_version) + + # Prepare the master url stem and pull out any username/password. If present + # replace the default opener with one which offers that password. + dists_parsed_master = list(pool_parsed) + if '@' in dists_parsed_master[1]: + (username_password, host) = pool_parsed[1].split('@', 1) + (username, password) = username_password.split(':', 1) + + dists_parsed_master[1] = host + + # Work out the authentication domain. + domain_parsed = [ dists_parsed_master[0], dists_parsed_master[1], '/', None, None, None ] + auth_uri = urlunparse(domain_parsed) + + # create a password manager + password_mgr = request.HTTPPasswordMgrWithDefaultRealm() + + # Add the username and password. + # If we knew the realm, we could use it instead of None. + password_mgr.add_password(None, auth_uri, username, password) + + handler = request.HTTPBasicAuthHandler(password_mgr) + + # create "opener" (OpenerDirector instance) + opener = request.build_opener(handler) + + # Now all calls to urllib.request.urlopen use our opener. + request.install_opener(opener) + + self.dists_parsed = dists_parsed_master + + def download_one(self, member, filename, hash_factory=None): + directory = os.path.dirname(filename) + if not os.path.exists(directory): + os.makedirs(directory) + + dists_parsed = list(self.dists_parsed) + dists_parsed[2] = re.sub(r"/pool/.*", "/dists/" + self.package_dir + \ + member, dists_parsed[2]) + dists_uri = urlunparse(dists_parsed) + + print("Downloading %s ... " % dists_uri, end='') + sys.stdout.flush() + try: + with request.urlopen(dists_uri) as dists, open(filename, "wb") as out: + hashobj = None + if hash_factory: + hashobj = hash_factory() + for chunk in iter(lambda: dists.read(256 * 1024), b''): + if hashobj: + hashobj.update(chunk) + out.write(chunk) + checksum = True + if hashobj: + checksum = hashobj.hexdigest() + except HTTPError as e: + if e.code == 404: + print("not found") + else: + raise + else: + print("found") + return checksum + return None + + def download(self, base): + """Download an entire signed result from dists.""" + + # Download the checksums and use that to download the contents. + sums = 'SHA256SUMS' + sums_local = os.path.join(base, self.package_version, sums) + if not self.download_one(sums, sums_local): + print('download-signed: {0}: not found'.format(sums)) + sys.exit(1) + + # Read the checksum file and download the files it mentions. + here = os.path.abspath(base) + with open(sums_local) as sfd: + for line in sfd: + line = line.strip() + (checksum_expected, member) = (line[0:64], line[66:]) + filename = os.path.abspath(os.path.join(base, self.package_version, member)) + if not filename.startswith(here): + print('download-signed: {0}: member outside output directory'.format(member)) + sys.exit(1) + + # Download and checksum this member. + checksum_actual = self.download_one(member, filename, hashlib.sha256) + if checksum_expected != checksum_actual: + print('download-signed: {0}: member checksum invalid'.format(member)) + sys.exit(1) + + # If this is a tarball result then extract it. + here = os.path.abspath(os.path.join(base, self.package_version)) + tarball_filename = os.path.join(base, self.package_version, 'signed.tar.gz') + if os.path.exists(tarball_filename): + with tarfile.open(tarball_filename) as tarball: + for tarinfo in tarball: + if not filename.startswith(here): + print('download-signed: {0}: tarball member outside output directory'.format(member)) + sys.exit(1) + for tarinfo in tarball: + print('Extracting {0} ...'.format(tarinfo.name)) + tarball.extract(tarinfo, base) + + +downloader = SignedDownloader(**vars(args)) +downloader.download('.') diff -Nru linux-restricted-modules-5.4.0/scripts/module-common.lds linux-restricted-modules-5.4.0/scripts/module-common.lds --- linux-restricted-modules-5.4.0/scripts/module-common.lds 2021-03-19 11:52:22.000000000 +0000 +++ linux-restricted-modules-5.4.0/scripts/module-common.lds 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -/* - * Common module linker script, always used when linking a module. - * Archs are free to supply their own linker scripts. ld will - * combine them automatically. - */ -SECTIONS { - /DISCARD/ : { - *(.discard) - *(.discard.*) - } - - __ksymtab 0 : { *(SORT(___ksymtab+*)) } - __ksymtab_gpl 0 : { *(SORT(___ksymtab_gpl+*)) } - __ksymtab_unused 0 : { *(SORT(___ksymtab_unused+*)) } - __ksymtab_unused_gpl 0 : { *(SORT(___ksymtab_unused_gpl+*)) } - __ksymtab_gpl_future 0 : { *(SORT(___ksymtab_gpl_future+*)) } - __kcrctab 0 : { *(SORT(___kcrctab+*)) } - __kcrctab_gpl 0 : { *(SORT(___kcrctab_gpl+*)) } - __kcrctab_unused 0 : { *(SORT(___kcrctab_unused+*)) } - __kcrctab_unused_gpl 0 : { *(SORT(___kcrctab_unused_gpl+*)) } - __kcrctab_gpl_future 0 : { *(SORT(___kcrctab_gpl_future+*)) } - - .init_array 0 : ALIGN(8) { *(SORT(.init_array.*)) *(.init_array) } - - __jump_table 0 : ALIGN(8) { KEEP(*(__jump_table)) } -} diff -Nru linux-restricted-modules-5.4.0/update-version linux-restricted-modules-5.4.0/update-version --- linux-restricted-modules-5.4.0/update-version 2021-03-10 15:34:14.000000000 +0000 +++ linux-restricted-modules-5.4.0/update-version 2021-04-07 13:53:23.000000000 +0000 @@ -3,10 +3,21 @@ tag_prefix=`dpkg-parsechangelog -S Source | sed 's/linux-restricted-modules/Ubuntu/'`- commit=: -if [ "$1" = "--commit" ]; then - shift - commit= -fi +no_update=false +while : +do + if [ "$1" = "--commit" ]; then + shift + commit= + + elif [ "$1" = "--no-update" ]; then + shift + no_update=true + + else + break + fi +done if [ "$#" -ne 1 ]; then echo "Usage: $0 " 1>&2 @@ -41,22 +52,22 @@ fi # Update things from the primary package. -for thing in \ - debian/dkms-versions \ - debian/scripts/misc/git-ubuntu-log \ - debian/scripts/dkms-build \ - debian/scripts/dkms-build--nvidia-N \ - debian/scripts/fix-filenames.c \ - scripts/module-common.lds -do - cp -p "$master_dir/$thing" "$thing" || exit 1 - if ! git diff --exit-code -- "$thing" >/dev/null; then - git commit -m "UBUNTU: $thing -- update from master" -s -- "$thing" - else - echo "$thing: no changes from master" - fi -done - +if [ "$no_update" = 'false' ]; then + for thing in \ + debian/dkms-versions \ + debian/scripts/misc/git-ubuntu-log \ + debian/scripts/dkms-build \ + debian/scripts/dkms-build--nvidia-N \ + debian/scripts/fix-filenames.c + do + cp -p "$master_dir/$thing" "$thing" || exit 1 + if ! git diff --exit-code -- "$thing" >/dev/null; then + git commit -m "UBUNTU: $thing -- update from master" -s -- "$thing" + else + echo "$thing: no changes from master" + fi + done +fi #echo "here_version<$here_version>" #echo "master_version<$master_version>" @@ -67,7 +78,7 @@ elif dpkg --compare-versions "$here_version" eq "$master_version"; then here_newversion="$master_version+1" else - minor=$(( ${here_version#*+} + 1 )) + minor=$(( ${here_version##*+} + 1 )) here_newversion="$master_version+$minor" fi