[PATCH V2 5/5 G][L-R-M] UBUNTU: [packaging] add nvidia 450 and 450-server

Alberto Milone alberto.milone at canonical.com
Mon Jul 20 14:32:54 UTC 2020


The new nvidia 450 replaces the 440 series, whereas
the -server flavours only get the additional 450-server
(keeping 440-server).

BugLink: https://bugs.launchpad.net/bugs/1887674

Signed-off-by: Alberto Milone <alberto.milone at canonical.com>
---
 debian/control.d/meta-nvidia              | 47 +++++++++++++++++------
 debian/control.d/nvidia                   | 46 ++++++++++++++++++++--
 debian/control.d/transitionals-nvidia-440 | 13 +++++++
 debian/dkms-versions                      |  3 +-
 debian/rules                              | 25 ++++++++----
 5 files changed, 109 insertions(+), 25 deletions(-)
 create mode 100644 debian/control.d/transitionals-nvidia-440

diff --git a/debian/control.d/meta-nvidia b/debian/control.d/meta-nvidia
index 71d3c69..3f9b4d0 100644
--- a/debian/control.d/meta-nvidia
+++ b/debian/control.d/meta-nvidia
@@ -24,17 +24,17 @@ Description: Extra drivers for nvidia-435 for generic${variant:suffix}
  Install extra signed nvidia-435 modules compatible with
  generic${variant:suffix}
 
-Package: linux-modules-nvidia-440-generic${variant:suffix}
+Package: linux-modules-nvidia-450-generic${variant:suffix}
 Build-Profiles: <!stage1>
 Architecture: amd64
 Section: kernel
-Provides: ${dkms:nvidia-440-modules}
+Provides: ${dkms:nvidia-450-modules}
 Depends:
  ${misc:Depends},
- linux-modules-nvidia-440- at ABI@-generic (= ${binary:Version}),
- ${nvk:nvidia-440}
-Description: Extra drivers for nvidia-440 for generic${variant:suffix}
- Install extra signed nvidia-440 modules compatible with
+ linux-modules-nvidia-450- at ABI@-generic (= ${binary:Version}),
+ ${nvk:nvidia-450}
+Description: Extra drivers for nvidia-450 for generic${variant:suffix}
+ Install extra signed nvidia-450 modules compatible with
  generic${variant:suffix}
 
 Package: linux-modules-nvidia-418-server-generic${variant:suffix}
@@ -63,6 +63,19 @@ Description: Extra drivers for nvidia-440-server for generic${variant:suffix}
  Install extra signed nvidia-440-server modules compatible with
  generic${variant:suffix}
 
+Package: linux-modules-nvidia-450-server-generic${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-450-server-modules}
+Depends:
+ ${misc:Depends},
+ linux-modules-nvidia-450-server- at ABI@-generic (= ${binary:Version}),
+ ${nvk:nvidia-450-server}
+Description: Extra drivers for nvidia-450-server for generic${variant:suffix}
+ Install extra signed nvidia-450-server modules compatible with
+ generic${variant:suffix}
+
 Package: linux-modules-nvidia-390-lowlatency${variant:suffix}
 Build-Profiles: <!stage1>
 Architecture: amd64
@@ -89,17 +102,17 @@ Description: Extra drivers for nvidia-435 for lowlatency${variant:suffix}
  Install extra signed nvidia-435 modules compatible with
  lowlatency${variant:suffix}
 
-Package: linux-modules-nvidia-440-lowlatency${variant:suffix}
+Package: linux-modules-nvidia-450-lowlatency${variant:suffix}
 Build-Profiles: <!stage1>
 Architecture: amd64
 Section: kernel
-Provides: ${dkms:nvidia-440-modules}
+Provides: ${dkms:nvidia-450-modules}
 Depends:
  ${misc:Depends},
- linux-modules-nvidia-440- at ABI@-lowlatency (= ${binary:Version}),
- ${nvk:nvidia-440}
-Description: Extra drivers for nvidia-440 for lowlatency${variant:suffix}
- Install extra signed nvidia-440 modules compatible with
+ linux-modules-nvidia-450- at ABI@-lowlatency (= ${binary:Version}),
+ ${nvk:nvidia-450}
+Description: Extra drivers for nvidia-450 for lowlatency${variant:suffix}
+ Install extra signed nvidia-450 modules compatible with
  lowlatency${variant:suffix}
 
 Package: linux-modules-nvidia-418-server-lowlatency${variant:suffix}
@@ -123,3 +136,13 @@ Depends: ${misc:Depends},
  ${nvk:nvidia-440-server}
 Description: Extra drivers for nvidia-440-server for the lowlatency flavour
  Install extra signed nvidia-440-server modules compatible with the lowlatency flavour.
+
+Package: linux-modules-nvidia-450-server-lowlatency${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-450-server-modules}
+Depends: ${misc:Depends}, linux-modules-nvidia-450-server-ABI-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.
diff --git a/debian/control.d/nvidia b/debian/control.d/nvidia
index c2a012d..383c55d 100644
--- a/debian/control.d/nvidia
+++ b/debian/control.d/nvidia
@@ -36,7 +36,7 @@ Description: Linux kernel nvidia modules for version @ABI@
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
 
-Package: linux-modules-nvidia-440- at ABI@-generic
+Package: linux-modules-nvidia-450- at ABI@-generic
 Build-Profiles: <!stage1>
 Architecture: amd64
 Section: kernel
@@ -51,7 +51,7 @@ Description: Linux kernel nvidia modules for version @ABI@
  This package contains the Linux kernel nvidia modules for version @ABI at .
  .
  You likely do not want to install this package directly. Instead, install the
- one of the linux-modules-nvidia-440-generic* meta-packages,
+ one of the linux-modules-nvidia-450-generic* meta-packages,
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
 
@@ -93,6 +93,25 @@ Description: Linux kernel nvidia modules for version @ABI@
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
 
+Package: linux-modules-nvidia-450-server- at ABI@-generic
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Priority: optional
+Built-Using: ${linux:BuiltUsing}
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+ binutils,
+ linux-image- at ABI@-generic | linux-image-unsigned- at ABI@-generic,
+Description: Linux kernel nvidia modules for version @ABI@
+ This package contains the Linux kernel nvidia modules for version @ABI at .
+ .
+ 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-390- at ABI@-lowlatency
 Build-Profiles: <!stage1>
 Architecture: amd64
@@ -131,7 +150,7 @@ Description: Linux kernel nvidia modules for version @ABI@
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
 
-Package: linux-modules-nvidia-440- at ABI@-lowlatency
+Package: linux-modules-nvidia-450- at ABI@-lowlatency
 Build-Profiles: <!stage1>
 Architecture: amd64
 Section: kernel
@@ -146,7 +165,7 @@ Description: Linux kernel nvidia modules for version @ABI@
  This package contains the Linux kernel nvidia modules for version @ABI at .
  .
  You likely do not want to install this package directly. Instead, install the
- one of the linux-modules-nvidia-440-lowlatency* meta-packages,
+ one of the linux-modules-nvidia-450-lowlatency* meta-packages,
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
 
@@ -187,3 +206,22 @@ Description: Linux kernel nvidia modules for version @ABI@
  one of the linux-modules-nvidia-440-server-lowlatency* meta-packages,
  which will ensure that upgrades work correctly, and that supporting packages are
  also installed.
+
+Package: linux-modules-nvidia-450-server- at ABI@-lowlatency
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Priority: optional
+Built-Using: ${linux:BuiltUsing}
+Depends:
+ ${misc:Depends},
+ ${shlibs:Depends},
+ binutils,
+ linux-image- at ABI@-lowlatency | linux-image-unsigned- at ABI@-lowlatency,
+Description: Linux kernel nvidia modules for version @ABI@
+ This package contains the Linux kernel nvidia modules for version @ABI at .
+ .
+ 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.
diff --git a/debian/control.d/transitionals-nvidia-440 b/debian/control.d/transitionals-nvidia-440
new file mode 100644
index 0000000..987ecad
--- /dev/null
+++ b/debian/control.d/transitionals-nvidia-440
@@ -0,0 +1,13 @@
+Package: linux-modules-nvidia-440-generic
+Architecture: amd64
+Section: oldlibs
+Depends: linux-modules-nvidia-450-generic
+Description: Extra drivers for nvidia-440 for the generic flavour (dummy transitional package)
+ Transitional package for upgrades of -440 to -450.
+
+Package: linux-modules-nvidia-440-lowlatency
+Architecture: amd64
+Section: oldlibs
+Depends: linux-modules-nvidia-450-lowlatency
+Description: Extra drivers for nvidia-440 for the generic flavour (dummy transitional package)
+ Transitional package for upgrades of -440 to -450.
diff --git a/debian/dkms-versions b/debian/dkms-versions
index a1fe99b..9647ba1 100644
--- a/debian/dkms-versions
+++ b/debian/dkms-versions
@@ -1,6 +1,7 @@
 zfs-linux 0.8.4-1ubuntu8
 nvidia-graphics-drivers-390 390.138-0ubuntu2
 nvidia-graphics-drivers-435 435.21-0ubuntu8
-nvidia-graphics-drivers-440 0
+nvidia-graphics-drivers-450 0
 nvidia-graphics-drivers-418-server 0
 nvidia-graphics-drivers-440-server 0
+nvidia-graphics-drivers-450-server 0
diff --git a/debian/rules b/debian/rules
index 3940bbf..91dcab6 100755
--- a/debian/rules
+++ b/debian/rules
@@ -15,15 +15,17 @@ src_kernel = $(shell echo "$(src_package)" | sed -e 's/restricted-modules-//')
 
 dkms_nvidia_390_version=$(shell gawk '/^nvidia-graphics-drivers-390 / { print $$2; }' debian/dkms-versions)
 dkms_nvidia_435_version=$(shell gawk '/^nvidia-graphics-drivers-435 / { print $$2; }' debian/dkms-versions)
-dkms_nvidia_440_version=$(shell gawk '/^nvidia-graphics-drivers-440 / { print $$2; }' debian/dkms-versions)
+dkms_nvidia_450_version=$(shell gawk '/^nvidia-graphics-drivers-450 / { print $$2; }' debian/dkms-versions)
 dkms_nvidia_418_server_version=$(shell gawk '/^nvidia-graphics-drivers-418-server / { print $$2; }' debian/dkms-versions)
 dkms_nvidia_440_server_version=$(shell gawk '/^nvidia-graphics-drivers-440-server / { print $$2; }' debian/dkms-versions)
+dkms_nvidia_450_server_version=$(shell gawk '/^nvidia-graphics-drivers-450-server / { print $$2; }' debian/dkms-versions)
 
 nvidia_390_upstream_version=$(shell echo "$(dkms_nvidia_390_version)" | cut -d '-' -f 1)
 nvidia_435_upstream_version=$(shell echo "$(dkms_nvidia_435_version)" | cut -d '-' -f 1)
-nvidia_440_upstream_version=$(shell echo "$(dkms_nvidia_440_version)" | cut -d '-' -f 1)
+nvidia_450_upstream_version=$(shell echo "$(dkms_nvidia_450_version)" | cut -d '-' -f 1)
 nvidia_418_server_upstream_version=$(shell echo "$(dkms_nvidia_418_server_version)" | cut -d '-' -f 1)
 nvidia_440_server_upstream_version=$(shell echo "$(dkms_nvidia_440_server_version)" | cut -d '-' -f 1)
+nvidia_450_server_upstream_version=$(shell echo "$(dkms_nvidia_450_server_version)" | cut -d '-' -f 1)
 
 # Get variants, assuming primary if debian/variants is not present
 variants = --
@@ -143,10 +145,10 @@ nvidia-%:
 	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-435-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-435-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-435, pool/restricted/n/nvidia-graphics-drivers-435/nvidia-kernel-source-435_$(dkms_nvidia_435_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-435/nvidia-dkms-435_$(dkms_nvidia_435_version)_$(arch).deb)
 	$(call install_control,linux-modules-nvidia-435-$(src_abi)-$*,$*,nvidia,435,postinst postrm prerm config templates)
 
-	install -d debian/linux-modules-nvidia-440-$(src_abi)-$*
-	install -d debian/linux-modules-nvidia-440-$(src_abi)-$*/usr/lib/linux/triggers
-	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-440-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-440-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-440, pool/restricted/n/nvidia-graphics-drivers-440/nvidia-kernel-source-440_$(dkms_nvidia_440_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-440/nvidia-dkms-440_$(dkms_nvidia_440_version)_$(arch).deb)
-	$(call install_control,linux-modules-nvidia-440-$(src_abi)-$*,$*,nvidia,440,postinst postrm prerm config templates)
+	install -d debian/linux-modules-nvidia-450-$(src_abi)-$*
+	install -d debian/linux-modules-nvidia-450-$(src_abi)-$*/usr/lib/linux/triggers
+	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-450-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-450-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-450, pool/restricted/n/nvidia-graphics-drivers-450/nvidia-kernel-source-450_$(dkms_nvidia_450_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-450/nvidia-dkms-450_$(dkms_nvidia_450_version)_$(arch).deb)
+	$(call install_control,linux-modules-nvidia-450-$(src_abi)-$*,$*,nvidia,450,postinst postrm prerm config templates)
 
 	install -d debian/linux-modules-nvidia-418-server-$(src_abi)-$*
 	install -d debian/linux-modules-nvidia-418-server-$(src_abi)-$*/usr/lib/linux/triggers
@@ -158,6 +160,11 @@ nvidia-%:
 	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-440-server-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-440-server-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-440srv, pool/restricted/n/nvidia-graphics-drivers-440-server/nvidia-kernel-source-440-server_$(dkms_nvidia_440_server_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-440-server/nvidia-dkms-440-server_$(dkms_nvidia_440_server_version)_$(arch).deb)
 	$(call install_control,linux-modules-nvidia-440-server-$(src_abi)-$*,$*,nvidia,440srv,postinst postrm prerm config templates)
 
+	install -d debian/linux-modules-nvidia-450-server-$(src_abi)-$*
+	install -d debian/linux-modules-nvidia-450-server-$(src_abi)-$*/usr/lib/linux/triggers
+	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-450-server-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-450-server-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-450srv, pool/restricted/n/nvidia-graphics-drivers-450-server/nvidia-kernel-source-450-server_$(dkms_nvidia_450_server_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-450-server/nvidia-dkms-450-server_$(dkms_nvidia_450_server_version)_$(arch).deb)
+	$(call install_control,linux-modules-nvidia-450-server-$(src_abi)-$*,$*,nvidia,450srv,postinst postrm prerm config templates)
+
 prepare-dkms:
 	mkdir -p $(dkms_dir)
 	ln -s /usr/src $(dkms_dir)/headers
@@ -171,15 +178,17 @@ override_dh_auto_install: prepare-dkms $(flavours)
 gencontrol_flags :=
 gencontrol_flags += -Vdkms:nvidia-390-modules="nvidia-dkms-390 (= $(dkms_nvidia_390_version))"
 gencontrol_flags += -Vdkms:nvidia-435-modules="nvidia-dkms-435 (= $(dkms_nvidia_435_version))"
-gencontrol_flags += -Vdkms:nvidia-440-modules="nvidia-dkms-440 (= $(dkms_nvidia_440_version))"
+gencontrol_flags += -Vdkms:nvidia-450-modules="nvidia-dkms-450 (= $(dkms_nvidia_450_version))"
 gencontrol_flags += -Vdkms:nvidia-418-server-modules="nvidia-dkms-418-server (= $(dkms_nvidia_418_server_version))"
 gencontrol_flags += -Vdkms:nvidia-440-server-modules="nvidia-dkms-440-server (= $(dkms_nvidia_440_server_version))"
+gencontrol_flags += -Vdkms:nvidia-450-server-modules="nvidia-dkms-450-server (= $(dkms_nvidia_450_server_version))"
 
 gencontrol_flags += -Vnvk:nvidia-390="nvidia-kernel-common-390 (<= $(nvidia_390_upstream_version)-1), nvidia-kernel-common-390 (>= $(nvidia_390_upstream_version))"
 gencontrol_flags += -Vnvk:nvidia-435="nvidia-kernel-common-435 (<= $(nvidia_435_upstream_version)-1), nvidia-kernel-common-435 (>= $(nvidia_435_upstream_version))"
-gencontrol_flags += -Vnvk:nvidia-440="nvidia-kernel-common-440 (<= $(nvidia_440_upstream_version)-1), nvidia-kernel-common-440 (>= $(nvidia_440_upstream_version))"
+gencontrol_flags += -Vnvk:nvidia-450="nvidia-kernel-common-450 (<= $(nvidia_450_upstream_version)-1), nvidia-kernel-common-450 (>= $(nvidia_450_upstream_version))"
 gencontrol_flags += -Vnvk:nvidia-418-server="nvidia-kernel-common-418-server (<= $(nvidia_418_server_upstream_version)-1), nvidia-kernel-common-418-server (>= $(nvidia_418_server_upstream_version))"
 gencontrol_flags += -Vnvk:nvidia-440-server="nvidia-kernel-common-440-server (<= $(nvidia_440_server_upstream_version)-1), nvidia-kernel-common-440-server (>= $(nvidia_440_server_upstream_version))"
+gencontrol_flags += -Vnvk:nvidia-450-server="nvidia-kernel-common-450-server (<= $(nvidia_450_server_upstream_version)-1), nvidia-kernel-common-450-server (>= $(nvidia_450_server_upstream_version))"
 
 override_dh_gencontrol:
 	dh_gencontrol -- $(gencontrol_flags)
-- 
2.25.1




More information about the kernel-team mailing list