[PATCH 6/7 G][L-R-M] UBUNTU: [packaging] add nvidia 418-server and 440-server drivers

Alberto Milone alberto.milone at canonical.com
Thu Jul 16 13:39:46 UTC 2020


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

Signed-off-by: Alberto Milone <alberto.milone at canonical.com>
---
 debian/control.d/meta-nvidia | 47 ++++++++++++++++++++++
 debian/control.d/nvidia      | 76 ++++++++++++++++++++++++++++++++++++
 debian/dkms-versions         |  4 +-
 debian/rules                 | 24 ++++++++++--
 4 files changed, 147 insertions(+), 4 deletions(-)

diff --git a/debian/control.d/meta-nvidia b/debian/control.d/meta-nvidia
index 4fdbc31..c934eaa 100644
--- a/debian/control.d/meta-nvidia
+++ b/debian/control.d/meta-nvidia
@@ -57,3 +57,50 @@ Depends: ${misc:Depends}, linux-modules-nvidia-440-ABI-lowlatency (= ${binary:Ve
  ${nvk:nvidia-440}
 Description: Extra drivers for nvidia-440 for the lowlatency flavour
  Install extra signed nvidia-440 modules compatible with the lowlatency flavour.
+
+Package: linux-modules-nvidia-418-server-generic${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-418-server-modules}
+Depends:
+ ${misc:Depends},
+ linux-modules-nvidia-418-server- at ABI@-generic (= ${binary:Version}),
+ ${nvk:nvidia-418-server}
+Description: Extra drivers for nvidia-418-server for generic${variant:suffix}
+ Install extra signed nvidia-418-server modules compatible with
+ generic${variant:suffix}
+
+Package: linux-modules-nvidia-418-server-lowlatency${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-418-server-modules}
+Depends: ${misc:Depends}, linux-modules-nvidia-418-server-ABI-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.
+
+Package: linux-modules-nvidia-440-server-generic${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-440-server-modules}
+Depends:
+ ${misc:Depends},
+ linux-modules-nvidia-440-server- at ABI@-generic (= ${binary:Version}),
+ ${nvk:nvidia-440-server}
+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-440-server-lowlatency${variant:suffix}
+Build-Profiles: <!stage1>
+Architecture: amd64
+Section: kernel
+Provides: ${dkms:nvidia-440-server-modules}
+Depends: ${misc:Depends}, linux-modules-nvidia-440-server-ABI-lowlatency (= ${binary:Version}),
+ ${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.
+
diff --git a/debian/control.d/nvidia b/debian/control.d/nvidia
index f2ac590..9efaf5e 100644
--- a/debian/control.d/nvidia
+++ b/debian/control.d/nvidia
@@ -81,3 +81,79 @@ Description: Linux kernel nvidia modules for version ABI
  You likely do not want to install this package directly. Instead, install the
  linux-image-nvidia-FLAVOUR meta-package, which will ensure that upgrades work
  correctly, and that supporting packages are also installed.
+
+Package: linux-modules-nvidia-418-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-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- 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-418-server-lowlatency* meta-packages,
+ which will ensure that upgrades work correctly, and that supporting packages are
+ also installed.
+
+Package: linux-modules-nvidia-440-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-440-server-generic* meta-packages,
+ which will ensure that upgrades work correctly, and that supporting packages are
+ also installed.
+
+Package: linux-modules-nvidia-440-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-440-server-lowlatency* meta-packages,
+ which will ensure that upgrades work correctly, and that supporting packages are
+ also installed.
diff --git a/debian/dkms-versions b/debian/dkms-versions
index 0a5d3ba..20d8593 100644
--- a/debian/dkms-versions
+++ b/debian/dkms-versions
@@ -1,6 +1,8 @@
 zfs-linux 0.8.3-1ubuntu12
 nvidia-graphics-drivers-390 390.132-0ubuntu2
 nvidia-graphics-drivers-435 0
-nvidia-graphics-drivers-440 440.82+really.440.64-0ubuntu4
+nvidia-graphics-drivers-440 0
+nvidia-graphics-drivers-418-server 0
+nvidia-graphics-drivers-440-server 0
 virtualbox 6.1.6-dfsg-1
 wireguard-linux-compat 1.0.20200413-1
diff --git a/debian/rules b/debian/rules
index 95586cd..ee847e6 100755
--- a/debian/rules
+++ b/debian/rules
@@ -16,13 +16,17 @@ series = $(shell dpkg-parsechangelog | sed -ne 's/^Distribution: *//p' | sed -e
 
 VARIANT_PROVIDES=$(shell echo "$(src_package)" | sed -e 's/linux-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_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_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)
 
 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_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)
 
 # Get variants, assumng primary if debian/variants is not present
 variants = --
@@ -144,6 +148,16 @@ nvidia-%:
 	$(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-418-server-$(src_abi)-$*
+	install -d debian/linux-modules-nvidia-418-server-$(src_abi)-$*/usr/lib/linux/triggers
+	$(call build_dkms, $(src_abi)-$*, linux-modules-nvidia-418-server-$(src_abi)-$*, $(CURDIR)/debian/linux-modules-nvidia-418-server-$(src_abi)-$*/lib/modules/$(src_abi)-$*/kernel, "", nvidia-418srv, pool/restricted/n/nvidia-graphics-drivers-418-server/nvidia-kernel-source-418-server_$(dkms_nvidia_418_server_version)_$(arch).deb pool/restricted/n/nvidia-graphics-drivers-418-server/nvidia-dkms-418-server_$(dkms_nvidia_418_server_version)_$(arch).deb)
+	$(call install_control,linux-modules-nvidia-418-server-$(src_abi)-$*,$*,nvidia,418srv,postinst postrm prerm config templates)
+
+	install -d debian/linux-modules-nvidia-440-server-$(src_abi)-$*
+	install -d debian/linux-modules-nvidia-440-server-$(src_abi)-$*/usr/lib/linux/triggers
+	$(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)
+
 prepare-dkms:
 	mkdir -p $(dkms_dir)
 	ln -s /usr/src $(dkms_dir)/headers
@@ -157,10 +171,14 @@ override_dh_auto_install: prepare-dkms $(flavours)
 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-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 += -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-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))"
 
 override_dh_gencontrol:
 	dh_gencontrol -- $(gencontrol_flags)
-- 
2.25.1




More information about the kernel-team mailing list