Apt: gestion des priorités


#1

Bonsoir,
vous allez me fouettez. J’avais suivis un tuto pour installer un paquet unstable sans vraiment comprendre le tuto.
Du coup l’idée du tuto c’était d’installer wireguard je crois mais de limiter l’utilisation du dépôt unstable à ce package.

Or j’ai recopié dans les preferences apt ce qui suit

Package: *
Pin: release a=unstable
Pin-Priority: 90

Or si je comprends bien (suite à la lecture du debian handbook) ici on dit qu’on souhaite piocher chez unstable TOUS les paquets possible tant que celui ci n’a pas déjà préalablement été installé?

En gros si j’installe open-office maintenant ce sera un open-office pompé de unstable? c’est bien ca?


#2

Bonjour !
Déjà: mettre une étoile en face de ‘package’ alors que tu ne veux qu’un paquet c’est prendre un missile pour tuer une mouche :grin:
Ensuite, par défaut, les autres dépôts sont à 900 je crois(correction c’est 500). Donc tant que tu ne dépasse pas cette valeur et qu’il n’y a pas de dépendance non satisfaite, à moins de forcer le destin, il ne se passera rien…
Et non sans indiquer explicitement, il n’ira pas chercher sur instable. Pour être sûr, fait nous voir ton sources.list

et je viens de te trouver un peut de lecture :
https://debian-facile.org/doc:systeme:apt:pinning


#3

Non, aucune inquiétude, ta prio à 90 rend les paquets sid moins importants même que ce qui est installé.
Tu aurais pu même ne rajouter aucune prio, car apt affecte par défaut une prio “naturelle” de 100 à unstable et experimental.
La prio, avec les derniers réglages debian, c’est surtout pour préciser que tu veux suivre en sid tel ou tel paquet, et là tu vas mettre une priorité genre 991 à ton paquet en sid pour qu’il continue à se mettre à jour en sid.

Mais désormais, la gestion des preferences apt par défaut est calculée pour éviter des glissements involontaires de stable en testing/sid/experimental, et il n’y a plus vraiment besoin de se protèger contre des installs intempestives.
[Edit: ATTENTION, ça ne vaut pas forcément pour les dépots autres que debian, là il faut continuer à faire attention quand on les rajoute.]


#4

Exemple, pour installer le noyau de sid/unstable dans ma testing je fais avec ces fichiers de priorité

root@debian:/etc/apt/preferences.d# cat linux-image security sid
Package: linux-image-amd64
Pin: release a=unstable
Pin-Priority: 995
Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 990
Package: *
Pin: release o=Debian,a=unstable,n=sid,l=Debian
Pin-Priority: 100
root@debian:/etc/apt/preferences.d#
root@debian:/etc/apt/apt.conf.d# cat 00default-perso
APT::Default-Release "bullseye";
root@debian:/etc/apt/apt.conf.d#

Ce qui donne

root@debian:~# apt policy linux-image-amd64
linux-image-amd64:
  Installé : 5.2+107
  Candidat : 5.2+107
 Table de version :
 *** 5.2+107 995
        100 https://cdn-aws.deb.debian.org/debian sid/main amd64 Packages
        100 /var/lib/dpkg/status
     5.2+106 990
        990 https://cdn-aws.deb.debian.org/debian bullseye/main amd64 Packages
     4.19+105+deb10u1 500
        500 https://cdn-aws.deb.debian.org/debian buster/main amd64 Packages
     4.9+80+deb9u9 500
        500 https://cdn-aws.deb.debian.org/debian stretch/main amd64 Packages
     4.9+80+deb9u6 500
        500 https://cdn-aws.deb.debian.org/debian-security stretch/updates/main amd64 Packages
     3.16+63+deb8u6 500
        500 https://cdn-aws.deb.debian.org/debian-security jessie/updates/main amd64 Packages
root@debian:~#

#5

Je vous remercie. Ca me rassure.

sources.list

deb http://deb.debian.org/debian/ buster main contrib non-free
deb-src http://deb.debian.org/debian/ buster main contrib non-free

deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb-src http://security.debian.org/debian-security buster/updates main contrib non-free

deb http://deb.debian.org/debian/ buster-updates main contrib non-free
deb-src http://deb.debian.org/debian/ buster-updates main contrib non-free

sources.list.d/pgsql

deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main

sources.list.d/unstable.list

deb http://deb.debian.org/debian/ unstable main

sources.list.d/vscode.list

deb [arch=amd64] http://packages.microsoft.com/repos/vscode stable main