troubleshooting:nvidia-driver-debian
Toto je starší verze dokumentu!
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
- instalace chybějících balíčků
apt-get install libdistro-info-perl git-buildpackage git-lfs quilt
Příprava zdrojových kódů
- stažení zdrojových kódů
git clone https://salsa.debian.org/anbe/nvidia-graphics-drivers-preview2.git
- přepnutí do požadované branch
cd nvidia-graphics-drivers-preview2/ git branch -a git checkout 418-preview
Import nového upstream release
- Zjištění dostupných verzí
$ 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
- Aktualizace chnagelogu
- changelog je potřeba commitovat, extrahuje se z něj verze
debchange --distribution UNRELEASED --newversion 418.43-1
- Stažení tarballu ze stránek nvidia
debian/rules get-orig-source
- Nahrání tarbalu na správné místo
mkdir -p ../tarballs-nvidia-graphics-drivers/418.43 cp *.orig*.tar.gz ../tarballs-nvidia-graphics-drivers/418.43/
Buildování
- používá se gbp (git build package)
- musí se zadat správná branch, jinak se nespustí
- pokud se provedou lokální změny jako například import upstream, tak je třeba přidat volbu
–git-ignore-new- je lepší provést ale commit, protože build používá pouze commitované soubory
- buildpackage se snaží stáhnout git repo s tarbally do
../tarballs-nvidia-graphics-drivers
gbp buildpackage --git-debian-branch=418-preview
- pro buildování jiné architektruy než je v systému se používá
–git-arch=i386–git-pbuilder
- pokud neexistuje prostředí, musí se nejprve vytvořit
$ 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
TODO, otázky, problémy
Q: where %version is coming from?
- stál jsem si repo a zkusil aktualizovat upstream
- měla tam být verze 418.43, ale furt se snažil stahovat původní 418.30
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
- where %version is coming from?
- Is it taken from changelog?
grep -R "418\." * debian/changelog:nvidia-graphics-drivers (418.43-1) UNRELEASED; urgency=medium debian/changelog: * New upstream beta 418.43 (2019-01-30).
- nebo je to v nějakém git atributu?
- nebo se to musí commitnout?
Q: how to create packages with 32 bit compatible libraries?
- Nvidia drops support for 32 bit architecture. Version 390.xx is the last one with 32 bit only tarball released.
- As far as I know, 32 bit compatible libraries should be still included in 64 bit tarball, but git project creates 64 bit deb packages only.
- According to debian wiki (svn instructions), i386 deb packages should be created by setting target arch to i386
- I have found similar option –git-arch=i386,. but it seems to do nothing :(
Konflikt s libglvnd
- zkusil jsem build větve 390 a skončilo chybou
pkg-checkbuilddeps: error: Build conflicts: libglvnd-dev
- je to opraveno commitem 832db072727c2b4c64a02bdbab8106164c83f367
- aktuálně je mergnuté do větví: 390-buster
- není v: master, 390xx/master, 390xx/stretch-backport
Zdroje
- README v git
- Debian wiki
- Building Debian Packages with git-buildpackage
- verze nvdia ovladačů v debian
- Nvidia oficiální seznam ovladačů
troubleshooting/nvidia-driver-debian.1552293055.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)
