regarding nvidia-cudnn
Andreas Beckmann
anbe at debian.org
Thu Jun 29 16:52:16 BST 2023
Hi Lumin,
I've pushed a few fixes for nvidia-cudnn.
There is no need for a fake library, it's sufficient to ship the
(dangling) SONAME symlink in order to make dpkg-shlibdeps work for
rdepends. Verified by an autopkgtest.
(If the fake library file gets replaced by the real one (or a symlink in
this case), this raises a debsums error in piuparts.)
Would we need these symlinks for the other libraries as well?
While looking at the package, some questions came up:
The generic virtual package name would be libcudnn-dev. Why isn't that
being provided (with a version)?
Why is there a dependency on nvidia-cuda-toolkit(-gcc)? I can only find
inclusion of cuda_runtime.h and libraries linked against
libcublas.so.11/libcublasLt.so.11. Therefore a (versioned) dependency on
nvidia-cuda-dev (>= 11), nvidia-cuda-dev (<< 12)
should be sufficient. It needs to be versioned that way since you want
it to pull in libcublas11 etc.
(If some project using cudnn wants to build with nvcc, it needs B-D on
nvidia-cuda-toolkit-gcc.)
Why does the nvidia-cudnn package have Pre-Depends but no preinst
script? I think they can all be moved to regular Depends.
Downloading with wget uses this command line option:
--hsts-file=/tmp/wget-hsts
Please don't use a deterministic file, but either drop it or use
/dev/null (if possible) or a temporary file from mktemp.
And most importantly: As an installer package, you need to verify the
integrity of the downloaded file, especially if you want it to use it as
a build dependency which shall install automatically.
If the downloaded file does not match a predefined checksum, abort
before extracting it.
An example installer package with verification:
https://salsa.debian.org/debian/b43-fwcutter/-/blob/master/debian/firmware-b43-installer.postinst
Andreas
More information about the pkg-nvidia-devel
mailing list