Sources.list au carré ou minimaliste [MàJ 21/02/11]

[size=150]CE FIL N’ÉTANT PLUS MAINTENU, SON UTILISATION EST FAITE SOUS VOTRE RESPONSABILITÉ
[/size]

Ricardo

Rendez-vous plutôt ici ==> Sources de paquets les bases
lol

(edition du 21 février)
Remarque, à la fin du fil se trouve une méthode pour génèrer un sources.list archi minimaliste mais optimisé par netselect.
Bien lire les premiers messages de ce fil
NOTA BENE: pensez à vérifier, avec apt-cache policy, aprés cette manipulation, que vous n’avez plus aucun dépot en priorité 500, sauf des dépots notés Translation-fr (pour ceux là, c’est normal).

Vous trouverez ici un sources.list avec les dépots essentiels de toutes les releases. En fixant juste les priorités avec un des fichiers preferences ci dessous (attention, c’est essentiel) , vous pouvez taper de la même manière quand vous avez besoin dans toutes les releases en même temps.

[quote="/etc/apt/sources.list"]################################################

squeeze

deb ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src ftp.fr.debian.org/debian/ squeeze main contrib non-free

squeeze multimedia

deb debian-multimedia.org squeeze main non-free
deb-src mirror.home-dn.net/debian-multimedia squeeze main

squeeze security

deb security.debian.org/ squeeze/updates main contrib non-free
deb-src security.debian.org/ squeeze/updates main contrib non-free

squeeze update

deb ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
deb-src ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free

################################################

wheezy

deb ftp.fr.debian.org/debian/ wheezy main contrib non-free
deb-src ftp.fr.debian.org/debian/ wheezy main contrib non-free

wheezy multimedia

deb debian-multimedia.org wheezy main non-free
deb-src debian-multimedia.org/ wheezy main

wheezy security

deb security.debian.org/ wheezy/updates main contrib non-free
deb-src security.debian.org/ wheezy/updates main contrib non-free

################################################

sid

deb ftp.fr.debian.org/debian/ sid main contrib non-free
deb-src ftp.fr.debian.org/debian/ sid main contrib non-free

sid multimedia

deb debian-multimedia.org/ sid main
deb-src debian-multimedia.org/ sid main

################################################

experimental

deb ftp.fr.debian.org/debian/ experimental main contrib non-free
deb-src ftp.fr.debian.org/debian/ experimental main contrib non-free

experimental multimedia (uniquement 64 bits, décommentez les lignes dans ce cas)

#deb debian-multimedia.org/ experimental main
#deb-src debian-multimedia.org/ experimental main
[/quote]
*********** preferences squeeze conseillé ***************

[quote]Package: *
Pin: release o=apt-build
Pin-Priority: 995

Package: *
Pin: release o=Debian,a=stable-updates,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 990

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 980

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 90

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 50

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 50

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 10[/quote]

************* preferences pour testing *************************

[quote]Package: *
Pin: release o=apt-build
Pin-Priority: 995

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 990

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 985

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable-updates,l=Debian
Pin-Priority: 980

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 980

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 975

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 980

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 90

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 90

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 90: *

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 90[/quote]

et enfin

***************** preferences pour sid ******************

[quote]Package: *
Pin: release o=apt-build
Pin-Priority: 995

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 985

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable-updates,l=Debian
Pin-Priority: 980

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 970

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 965

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 970

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 980

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 975

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 980

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 90[/quote]

[size=150]Une précaution tout de même[/size], parceque le problême m’est tombé dessus: il ne faut pas simplement copier/coller le contenu du fichier preferences, parceque ça ajoute des espaces au début de chaque ligne qu’il faut imperativement supprimer, car apt n’aime pas du tout.
Comme tout passe en 500, on se retrouve vite avec une belle sid matinée d’experimental. Heureusement que je fais toujours un apt-cache policy pour vérifier…
Enfin une fois que c’est bon…
[size=150]Pour les problêmes de clé:[/size]c’est :arrow_right: ici
[size=150]Pour les problêmes “Dynamic mmap ran out of room”[/size] c’est :arrow_right: ici

EDIT du 07/02/2011
[size=150]ATTENTION, LES SOURCES.LIST CI-DESSOUS NE SONT PAS À JOUR.
[/size]

[edit (fran.b)] À LIRE
Le principe du fichier preferences consiste à donner des priorités à certains dépots. Cette priorités se calcule en fonction du numéro «Pin_priority» donné à chaque dépot. Le principe consiste en gros à classer les branches -par exemple perso> lenny > squeeze > sid- puis à à leur donner une priorité suivant la règle suivante:

[quote] P > 1000
Cette priorité entraîne l’installation du paquet même s’il s’agit d’un retour en arrière.

990 < P <=1000
La version sera installée, même si elle n’appartient pas à la distribution par défaut ; mais elle ne sera pas installée si la version installée est plus récente.

500 < P <=990
La version sera installée, sauf s’il existe une version appartenant à la distribution par défaut ou si la version installée est plus récente.

100 < P <=500
La version sera installée, sauf s’il existe une version appartenant à une autre distribution ou si la version installée est plus récente.

0 < P <=100
La version sera installée si aucune version du paquet n’est installée.

P < 0
Cette priorité empêche l’installation de la version.
[/quote]

Dans notre exemple, on mettra donc une priorité maximale au dépot perso puis des priorités allant en décroissant sur les dépots lenny, squeeze et sid. Typiquement entre 501 et 990 pour lenny, et inférieur à 500 ou à 100 pour squeeze et sid.

Le problème se pose entre les dépots d’une même branche: lenny comporte le dépot classique, mais aussi le dépot securité, le dépot multimedia (Marillat), le dépot volatile (clamav), le dépot backport (j’en oublie?).
Deux options possibles: On controle tout en hiérarchisant les dépots au sein d’une même branche, c’est la méthode retenue dans les fichiers preferences qui suivent ma remarque (donc juste après les deux exemples ci dessous). On controle tout, cependant on peut être ammener à privilégier une version obsolète d’un paquet au sein d’une même branche (branche = lenny, ou squeeze, ou sid). Typiquement, un paquet peut être à la version n sur le dépot sécurité et n+1 sur le dépot classique.

Une autre méthode consiste à remarquer que si on ne fait pas de preferences, tous les dépots estampillés de la même branche recoivent tous la priorité 500 donc la même priorité. Si on désire ne pas se mouiller dans la hiérarchie des paquets d’une même branche, il suffit de donner la même priorité aux dépots d’une même branche. Cela donnerait le fichier preferences suivant pour l’ordre perso > stable > testing > unstable > experimental.

[code]Package: *
Pin: release o=apt-build
Pin-Priority: 995

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 990

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 90

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 50

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 50

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 10[/code]

Cela peut se nuancer, les paquets libavcodec51 sur multimedia sont incomatible avec vlc. On peut pour éviter tout souci diminuer la priorité de mulitimedia:

[code]Package: *
Pin: release o=apt-build
Pin-Priority: 995

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 990

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 980

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 990

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 80

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 90

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 40

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 50

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 10[/code]

Quoi qu’il en soit il faut donc faire attention, l’option -s permet de savoir quels paquets vont être installés, «apt-cache policy paquet» permet de savoir les différentes versions d’un paquet et «apt-cache policy» les différents dépots et preferences.

On peut également cibler des paquets avec le fichier preferences, cf http://forum.debian-fr.org/viewtopic.php?f=8&t=13757

Fin de la remarque.[/edit (fran.b)]

Voici en exemple un un fichier preferences (à créer s’il n’existe pas) pour une “stable” qui s’applique au sources.list du post précèdent, permettant de taper indifféremment en stable, testing, sid, et experimental, avec en plus les dépots debian-multimedia.

  • Dans l’ordre des release, les prefs privilègient ici la stable à savoir:
    stable>testing>sid>experimental
  • Dans l’ordre des categorie de depots de chaque release (quand ils existent):
    security>volatile>standard>multimedia

[quote="/etc/apt/preferences"]Package: *
Pin: release o=apt-build
Pin-Priority: 989

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 988

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 987

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 986

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 985

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 99

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 98

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 97

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 96

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 95

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 93[/quote]

tenez, le preferences qui va avec le même sources.list pour une “principalement” testing mettant dans l’ordre testing>stable>sid>experimental:

[quote="’/etc/apt/preferences’"]
Package: *
Pin: release o=apt-build
Pin-Priority: 989

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 988

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 987

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 986

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 985

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 984

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 983

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 982

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 99

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 98

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 96[/quote]

Pour ce qui est de la sid, il ne suffit pas de prendre le sources.list cité plus haut, car il contient aussi des sources experimentales.
Donc, voici une version Sid du fichier préfèrences mettant dans l’ordre
sid>stable>testing>experimental:

[quote="/etc/apt/preferences"]Package: *
Pin: release o=apt-build
Pin-Priority: 989

Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable,l=Unofficial Multimedia Packages
Pin-Priority: 988

Package: *
Pin: release o=Debian,a=unstable,l=Debian
Pin-Priority: 987

Package: *
Pin: release o=volatile.debian.org,a=stable,l=debian-volatile
Pin-Priority: 986

Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 985

Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable,l=Unofficial Multimedia Packages
Pin-Priority: 984

Package: *
Pin: release o=Debian,a=stable,l=Debian
Pin-Priority: 983

Package: *
Pin: release o=Debian,a=testing,l=Debian-Security
Pin-Priority: 982

Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages
Pin-Priority: 981

Package: *
Pin: release o=Debian,a=testing,l=Debian
Pin-Priority: 980

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

Package: *
Pin: release o=Debian,a=experimental,l=Debian
Pin-Priority: 98[/quote]

pour les discussions, les corrections à ces fichiers ou autres, la discussion se passe ici:
viewtopic.php?t=1810

Modifications:
[ul]19/06/07 : mise en place du fil à l’occasion de la sortie de etch
17/08/07 : etch v4.0r0 devient etch v4.0r1
16/09/07 : remise en forme générale
28/12/07 : etch v4.0r1 devient etch v4.0r2
12/02/08 : intègration du sources.list minimal.
14/02/08 : correction d’une erreur grave de conception provoquant un glissement dans des releases non souhaitées en cas de dispariton du paquet dans les releases réellement désirées
17/02/08 : etch v4.0r2 devient etch v4.0r3, généricisation des preferences en utilisant v=v4.0*
30/06/08 : correction d’une erreur de conception empêchant l’utilisation du -t -> les prios ont été baissées sous 990
24/07/08: modification de l’URI du mirroir volatile à l’ENS Cachan.
17/02/09: suite à la release de lenny, suppression des dépots etch, ajout des dépots complémentaires lenny (volatile et security), des dépots squeeze, suppression de la mention v=… dans les preferences pour rendre la signature encore plus générique.
12/09/09: remarque suite à débat sur Pause café (fran.b)[/ul]

Je me permet de fournir une autre manière de créer un sources.list pour ceux qui n’ont pas besoin de beaucoup de sources avec le paquet netselect-apt.
L’avantage de cette méthode est qu’elle permet de choisir les mirroirs les plus rapides pour chaque ordinateur.

Tout d’abord on rajouter une ligne au sources.list pour qu’il puisse télécharger netselect-apt :#nano /etc/apt/sources.list deb http://ftp.fr.debian.org/debian/ <release> main
Télécharger le paquet netselect-apt :apt-get install netselect-aptConfiguration de netselect-apt pour votre version de Debian :netselect-apt <release>Il faut remplacer par stable, testing, unstable, experimental, woody, sarge et sid.

Ajouter l’option -n si vous voulez inclure les paquets non-free :netselect-apt -n <release>ou l’option -f si vous voulez choisir uniquement les miroirs ftp.

netselect-apt vous créera donc un source.list personnalisé dans le dossier courant qu’il vous faudra copier vers votre sources.list actuel :

P-S: ne pas oublier de décommenter le sources.list si l’on veut utiliser apt-get.

Et sans installer forcément le sources.list produit, on peut utiliser le résultat fourni par netselect qui choisit le meilleur serveur, et reporter le choix qu’il a fait dans le sources.list plus complet indiqué tout au début pour l’optimiser.

AJOUT À LA DEMANDE DE SIDEL :

[quote=“ricardo”]AJOUT À LA DEMANDE DE SIDEL :

Rectifié.