Obsah

Sestavení debian balíčků pro proprietární nvidia driver

I want to try nvidia feature „Initial support of G-Sync compatible monitors“. It was introduced in 418.30 BETA driver. I am using GNU/Debian testing/unstable distribution and there is 390.87 and 410.93 only now. In experimental, there is 415.27. I found that it is possible to create newer package from git, but there is missing workflow in debian wiki. I suppose that primary git repo is maintained by anbe.

Příprava systému

apt-get install libdistro-info-perl git-buildpackage git-lfs quilt

Příprava zdrojových kódů

git clone https://salsa.debian.org/anbe/nvidia-graphics-drivers-preview2.git
cd nvidia-graphics-drivers-preview2/
git branch -a
git checkout 418-preview

Import nového upstream release

$ uscan --report
uscan: Newest version of nvidia-graphics-drivers on remote site is 418.43, local version is 418.30
uscan:    => Newer package available from
      https://download.nvidia.com/XFree86/Linux-x86_64/418.43/NVIDIA-Linux-x86_64-418.43.run
debchange --distribution UNRELEASED --newversion 418.43-1
debian/rules get-orig-source
mkdir -p ../tarballs-nvidia-graphics-drivers/418.43
cp *.orig*.tar.gz  ../tarballs-nvidia-graphics-drivers/418.43/
+ cmp -s debian/nv-readme.ids nv-readme.ids
+ diff -u debian/nv-readme.ids nv-readme.ids
--- debian/nv-readme.ids	2019-03-11 07:11:22.440234714 +0100
+++ nv-readme.ids	2019-03-11 07:11:28.508124795 +0100
@@ -283,3 +283,4 @@
 10DE174D
 10DE174E
 10DE179C
+10DE2182
+ true
+ : *** Supported PCI IDs have changed. See diff above. Aborting. ***
+ exit 1

Buildování

gbp buildpackage --git-debian-branch=418-preview
$ gbp buildpackage --git-debian-branch=418-preview  --git-arch=i386 --git-pbuilder
...
gbp:info: Performing the build
Base directory /var/cache/pbuilder/base-sid-i386.cow does not exist
gbp:error: 'git-pbuilder' failed: it exited with 1
DIST=buster ARCH=i386  git-pbuilder create
# DIST=sid ARCH=i386 git-pbuilder create

Vyřešeno

Q: where %version is coming from?

gbp:info: Tarballs 'nvidia-graphics-drivers_418.30.orig.tar.gz, nvidia-graphics-drivers_418.30.orig-amd64.tar.gz' not found at '../tarballs-nvidia-graphics-drivers/418.30'
gbp:error: upstream/418.30 is not a valid treeish
  grep -R "418\." *
  debian/changelog:nvidia-graphics-drivers (418.43-1) UNRELEASED; urgency=medium
  debian/changelog:  * New upstream beta 418.43 (2019-01-30).

Q: how to create packages with 32 bit compatible libraries?

Konflikt s libglvnd

pkg-checkbuilddeps: error: Build conflicts: libglvnd-dev

Testování

cd /usr/src/nvidia-git/build-area/nvidia-graphics-drivers-418.43.obsolete.1552863428.647153/NVIDIA-Linux-x86_64-418.43
./nvidia-settings -I ./

Zdroje