PINNING

Le but du pinning est de marier des branches Debian différentes dans le sources.list afin de bénéficier de paquets issus de chacune d'elles.

ATTENTION ! Tout apport de paquet des branches supérieures à la branche installée peut créer de l'instabilité par la mise à jour de dependances et le changement de version de paquets sensibles, notamment le paquet libc6 !

Ceci est dit. :)

SOURCES.LIST type - toutes les Branches

Il est entendu que vous pouvez commenter/supprimer tout dépôt de ce fichier pour l'accommoder à votre point de vue personnel…
Editez le fichier sources.list et complétez-le comme ci après :

 # vim /etc/apt/sources.list
  ################################################
  ## stable
  deb http://ftp.fr.debian.org/debian/ stable main contrib non-free
  # deb-src http://ftp.fr.debian.org/debian/ stable main contrib non-free
  
  ## stable multimedia
  deb http://www.debian-multimedia.org stable main
  # deb-src http://www.debian-multimedia.org stable main
  
  # stable security
  deb http://security.debian.org/ stable/updates main contrib non-free
  # deb-src http://security.debian.org/ stable/updates main contrib non-free
  
  # volatile
  deb http://volatile.debian.org/debian-volatile stable/volatile main contrib non-free
  # deb-src http://volatile.debian.org/debian-volatile stable/volatile main contrib non-free
  
  ################################################
  ## testing
  deb http://ftp.fr.debian.org/debian/ testing main contrib non-free
  # deb-src http://ftp.fr.debian.org/debian/ testing main contrib non-free
  
  ## testing multimedia
  deb http://www.debian-multimedia.org testing main
  # deb-src http://www.debian-multimedia.org testing main
  
  ## testing security
  deb http://security.debian.org/ testing/updates main contrib non-free
  # deb-src http://security.debian.org/ testing/updates main contrib non-free
  
  ################################################
  ## sid
  deb http://ftp.fr.debian.org/debian/ sid main contrib non-free
  # deb-src http://ftp.fr.debian.org/debian/ sid main contrib non-free
  
  ## sid multimedia
  deb http://www.debian-multimedia.org sid main
  # deb-src http://www.debian-multimedia.org sid main
  
  ################################################
  ## experimental
  deb http://ftp.fr.debian.org/debian/ experimental main contrib non-free
  # deb-src http://ftp.fr.debian.org/debian/ experimental main contrib non-free
  
  ## experimental multimedia (Seulement pour arch amd64)
  deb http://www.debian-multimedia.org experimental main
  # deb-src http://www.debian-multimedia.org experimental main
Note :

Avant de mettre le dépôt debian-multimedia experimental dans votre fichier sources.list assurez-vous qu'il vous intéresse réellement !

Pour vérifier le contenu de ce dépôt, allez sur la page du site concernant les paquets :
paquets dans debian-multimedia

PREFERENCES - Introduction

L'utilisation d'un fichier preferences permet de :

  1. Installer des paquets d'une branche différente (supérieure ou inférieure…) non disponibles dans la branche principale installée en priorité
  2. Régler les problèmes de dépendances qui ne manquent de survenir !

Le fichier /etc/apt/preferences est le fichier qui donne un ordre de priorité aux dépôts.

PREFERENCES - Définition des priorités (P)

Avant de parler des valeurs à donner aux différentes préférences (P), il est bon de rappeler ce qu'elles représentent exactement.

  P > 1000
Le paquet sera installé APT est forcé d'installer une version différente
de la version de la branche principale.
  
  990 < P <=1000
Le paquet sera installé sauf si une version plus récente est déjà installée.
  
  500 < P <=990
Le paquet ne sera installé qu'à défaut de version plus récente installée ou disponible
dans la distribution cible.
  
  100 < P <=500
Le paquet ne sera installé que s'il n'en existe aucune version plus récente, installée
ou disponible, dans une autre branche.
  
  0 < P <=100
Le paquet ne sera installé que si aucune autre version du paquet n'est installée
  
  P < 0
Le paquet ne sera jamais installé.

Et oui, vous pouvez utiliser des valeurs négatives, par exemple :
"-10" pour empêcher une mise à jour.

PREFERENCES - Activation du fichier Preferences

ATTENTION ! Après toute modification du fichier Preferences nous devons opérer les mises à jour.

Mise à jour :

 # aptitude update
La clé : debian-multimedia-keyring est valable pour tous les dépôts debian-multimedia. Inutile de la réinstaller pour chacun d'eux.

Remise à jour :

 # aptitude update

Installation si tout s'est bien passé :

 # aptitude safe-upgrade

PREFERENCES - Création du fichier

Le fichier preferences n'est pas généré automatiquement, nous devons le créer et l'éditer ainsi :

 # vim /etc/apt/preferences

PREFERENCES 1 - Stable avec le Pinning sur : Testing, Unstable et Experimental

Pour la branche stable, il est déconseillé de mélanger les dépôts de cette branche avec ceux des branches supérieures.

Pour ceux qui voudraient malgré tout utiliser le fichier sources.list ci-haut afin d'aller chercher des paquets dans les <branches supérieures>, voici un fichier preferences très sécurisé.
Avec la valeur négative, les paquets hors de la branche stable ne pourront être installés que volontairement.

  Package: *
  Pin: release o=Debian,a=stable,l=Debian
  Pin-Priority: 900
  
  Package: *
  Pin:release o=volatile.debian.org,a=stable,l=debian-volatile
  Pin-Priority: 900
    
  Package: * 
  Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
  Pin-Priority: 900
       
  Package: *
  Pin: release o=Debian,a=testing,l=Debian
  Pin-Priority: -10
  
  Package: *
  Pin:release o=Debian,a=testing,l=Debian-Security
  Pin-Priority: -10
  
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
  Pin-Priority: -10
  
  Package: *
  Pin: release o=Debian,a=unstable,l=Debian
  Pin-Priority: -10
  
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
  Pin-Priority: -10
  
  Package: *
  Pin: release o=Debian,a=experimental,l=Debian
  Pin-Priority: -10
     
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=experimental,l=Unofficial Multimedia Packages
  Pin-Priority: -10

Important :

Après avoir créé ou modifié votre fichier Preferences, la première chose à faire est :

  # apt-get update

Installation des clés si ce n'est déjà fait :

 # aptitude install debian-multimedia-keyring
  # apt-get update
  # apt-get safe-upgrade

Suivi immédiatement de :

  # apt-cache policy

Cette dernière commande vous permettra de vérifier si les priorités de votre fichier preferences sont bien prises en compte et correspondent à votre choix.

PREFERENCES 2 - Testing avec le Pinning sur : Stable, Unstable et Experimental

  Package: *
  Pin: release o=Debian,a=testing,l=Debian
  Pin-Priority: 900
  
  Package: *
  Pin:release o=Debian,a=testing,l=Debian-Security
  Pin-Priority: 900
   
  Package: * 
  Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
  Pin-Priority: 900
    
  Package: *
  Pin: release o=Debian,a=stable,l=Debian
  Pin-Priority: 800
  
  Package: *
  Pin:release o=Debian,a=stable,l=Debian-Security
  Pin-Priority: 800
  
  Package: *
  Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
  Pin-Priority: 800
    
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
  Pin-Priority: 800
  
  Package: *
  Pin: release o=Debian,a=unstable,l=Debian
  Pin-Priority: 90
  
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
  Pin-Priority: 90
   
  Package: *
  Pin: release o=Unofficial Multimedia Packages,a=experimental,l=Unofficial Multimedia Packages
  Pin-Priority: 1

Activez votre fichier comme pour le fichier preferences stable précédent.

PREFERENCES 3 - Unstable (ou : SID) avec le Pinning sur : Testing, Stable et Experimental

Package: *
Pin: release o=Unofficial Multimedia Packages,a=experimental,l=Unofficial Multimedia Packages
Pin-Priority: 1

Activez votre fichier.

Toutes les branches debian sont à priorité 500 par défaut, sauf :

  1. la <branche-experimental>
  2. et la branche des backports

qui sont en priorité 1 par défaut.

Ce fichier preferences, est suffisant avec la branche <multimedia-experimental> (qui est à priorité 500 par défaut) est ramenée en priorité 1.

PINNING - Utilisation

En cours de Rédaction par smolski

REMERCIEMENTS

Un krô merci à l'équipe de debian-facile ici :
http://debian-facile.org

Et à leur wiki d'enfer là :
http://wiki.debian-facile.org/manuel:configuration:pinning

Que vous pouvez consulter pour plus de détails encore ! ;-)

Yep ! :-D

debian/pinning.txt · Dernière modification: 2010/01/17 22:08 par smolski
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0