Same package versions published as different .deb files in the CUDA repository and nvidia.github.io, so apt reinstalls them in a loop

Aperta
#2,137 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
47/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
debian, go
Ambito
devops

Direzione di ricerca

Start by comparing the package publishing paths for the toolkit repository and the CUDA repository; the issue names no source files or tests. Reproduce on Debian 13 or 14 (amd64) with both repositories enabled and the stated pin priorities, then compare package checksums and apt-get -s full-upgrade before and after installation. Done means the same package version no longer triggers repeated reinstall or downgrade plans.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

The container toolkit packages are published in two NVIDIA apt repositories: the toolkit's own (https://nvidia.github.io/libnvidia-container/stable/deb/amd64) and the CUDA network repository (https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64). For the same version, the two .deb files differ: the CUDA repository's copy carries an extra ar member, _gpgbuilder (an embedded signature), so its size and checksums differ, while control.tar.xz and data.tar.xz are byte-identical.

Checked on 2026-10-11 for libnvidia-container1, libnvidia-container-tools, nvidia-container-toolkit-base and nvidia-container-toolkit, versions 1.20.1-1 and 1.20.0-1: all eight pairs have different SHA256 sums. For example, libnvidia-container1 1.20.1-1 is 1236052 bytes with SHA256 9d803cd9c898… from nvidia.github.io, and 1237398 bytes with SHA256 6c968fc75aa5… from the CUDA repository.

What happens: apt treats the two files as two builds of the same version. The installed package carries no origin in dpkg's status, so apt associates it with one of them, here always the CUDA repository's, even right after installing the nvidia.github.io build. When nvidia.github.io has the higher pin, apt plans to install that build again at every upgrade, reported as a downgrade, and installing it does not end the loop: apt full-upgrade keeps showing "4 downgraded" on a machine that uses both CUDA and the container toolkit.

To reproduce (Debian 13 or 14, amd64): enable both repositories, install nvidia-container-toolkit, pin nvidia.github.io above developer.download.nvidia.com (for example 1003 and 1002), then run apt-get -s full-upgrade, install, and run it again.

Expected: one version, one file. Possible fixes on your side: publish the same .deb (same checksum) in both repositories, keep the toolkit in only one of them, or give the CUDA repository's builds a distinct version (for example a +cuda suffix) so apt can tell them apart.

A workaround that works here: package-specific pins giving both origins the same priority below 1000, so the newer version wins from either repository and an identical version never flips.

Package: libnvidia-container1 libnvidia-container-tools nvidia-container-toolkit nvidia-container-toolkit-base
Pin: origin nvidia.github.io
Pin-Priority: 990

Package: libnvidia-container1 libnvidia-container-tools nvidia-container-toolkit nvidia-container-toolkit-base
Pin: origin developer.download.nvidia.com
Pin-Priority: 990

Environment: Debian testing (forky), apt 3.3.3, toolkit 1.20.1-1.

This issue was written with AI assistance, which I directed and checked.

Daniel Campos Ramos

Lingua principale
Go
Stelle
4.6k
Fork
612
Merge medio
3g 8h
PR unite (30g)
36

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di NVIDIA/nvidia-container-toolkit

Tutte le issue di NVIDIA/nvidia-container-toolkit

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.