logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Ceci est une ancienne révision du document !


Configurer ses dépôts favoris avec les fichiers sources.list

Introduction

L'utilisation normale de Debian se fait sans jamais manipuler de fichier .deb à la main, mais en indiquant à APT où récupérer ces fichiers.

En général, ils se trouvent sur des serveurs appelés dépôts. Il convient alors de renseigner ses fichiers sources.list afin d'indiquer de quelles sections de quelles branches de quels dépôts il lui faut récupérer les listes de paquets.

Cela se fait en renseignant les fichiers présents dans /etc/apt/sources.list.d/.

Dépôts, branches et sections

Les paquets Debian sont regroupés dans des dépôts, le principal étant le dépôt officiel. Chaque dépôt se divise ensuite suivant les différentes branches de Debian (voir branches_debian). Et chaque branche est à son tour divisée en sections relatives à la liberté des paquets.

Prenons par exemple le dépôt officiel Debian.

Le miroir1) français habituel se situe à l'adresse http://ftp.fr.debian.org/debian/.

On trouve sur ce miroir les branches Debian habituelles : oldstable2), stable3), testing4), unstable5) et experimental6). Il existe trois branches supplémentaires : stable-updates, stable-proposed-updates et stable-backports apportant des paquets supplémentaires à la branche stable, mais ne faisant pas à proprement parler partie de celle-ci.

Si l'on s'intéresse à la branche stable, on y trouve à l'intérieur les trois sections habituelles : main, contenant les paquets libres, contrib, contenant les paquets libres dépendant de contenu non-libre, et non-free contenant les paquets non-libres.

Les fichiers sources.list

Nous allons maintenant voir où placer nos fichiers contenant la liste des dépôts, et comment les rédiger.

Emplacement des fichiers

L'ancienne méthode était de placer toutes les sources dans le fichier /etc/apt/sources.list. Aujourd'hui, on utilise plutôt le répertoire /etc/apt/sources.list.d/ en créant un nouveau fichier par thème. Par exemple :

  • /etc/apt/sources.list.d/00debian-officiel.list pour les paquets du miroir officiel
  • /etc/apt/sources.list.d/10deb-mozilla.list pour les miroirs des mainteneurs mozilla
  • etc.

Création et édition des fichiers

S'agissant d'une opération d'administration, la création et l'édition de ces fichiers devra être faite en tant que super-utilisateur7) avec un éditeur de texte8) tel nano, vim, etc.

On pourra par exemple commencer comme cela :

su -
(mot de passe root)
nano /etc/apt/sources.list.d/00debian-officiel.list

Syntaxe des fichiers

Pour les listes de paquets

La syntaxe est élémentaire, pour récupérer la liste des paquets d'un dépôt url_du_dépôt pour la branche ma_branche pour les sections section_1 et section_2, on écrit :

deb url_du_dépôt ma_branche section_1 section_2
L'URL peut débuter par file:// pour indiquer une source locale située dans l'arborescence de fichiers du système, par http:// pour indiquer une source accessible depuis un serveur web, ou encore par ftp:// pour une source disponible sur un serveur FTP.

Exemple, pour récupérer les listes des trois sections de la branche stable du dépôt officiel via le miroir francophone :

deb http://ftp.fr.debian.org/debian/ stable main contrib non-free

On peut, et il est même préférable de le faire, remplacer la branche par son nom release. Par exemple, la stable est au moment de la rédaction du tuto wheezy. La ligne devient donc :

deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
L'intérêt d'utiliser le nom release est que lors de la sortie d'une nouvelle stable, le système ne se met pas à jour automatiquement mais attends que l'administrateur (ie. vous) décide du bon moment pour migrer vers celle-ci.

Pour les listes de sources

De manière similaire, si vous voulez récupérer le code source des paquets, pour recompiler vous-même les paquets après y avoir effectué vos propres modifications, vous pouvez ajouter une ligne sur le modèle suivant :

deb-src url_du_dépôt ma_branche section_1 section_2

Ce qui donne pour notre exemple précédent :

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

Pour les commentaires

Afin de rajouter des explications dans le fichiers, qui soient ignorées par APT, on peut rajouter une ligne commençant par un #. Exemple :

# Les dépôts officiels Debian Wheezy, sans les sources :
deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free

Mise à jour de la liste des paquets

Après chaque modification des sources.list, il est nécessaire de lancer un update de la liste des paquets, via la commande suivant :

aptitude update

Cette opération doit être lancée en tant que super-utilisateur9).

Liste des dépôts principaux

Nous avons repris ci-dessous une liste des principaux dépôts Debian existants. Il faut savoir que si les dépôts officiels sont des dépôts de confiance, chaque Développeur Debian signant ses envois via une clé GPG, il n'en est pas nécessairement de même des autres dépôts. Aussi, nous vous conseillons pour des raisons de sécurité de vous limiter autant que possible aux dépôts officiels, voire même à la section main de celui-ci, le code en étant libre et donc vérifiable par tout le monde.

Les dépôts Debian Officiels

Ils existent pour les branches oldstable, stable=wheezy, testing=jessie, unstable=sid et experimental=rc-buggy (avec en plus, dans le cas de stable, les branches stable-updates, stable-proposed-updates et stable-backports) et sont à chaque fois déclinés en les trois sections main, contrib et non-free.

Exemples pour un Wheezy libre mais très à jour, sans récupération de la liste des sources :

# wheezy
deb http://ftp.fr.debian.org/debian/ wheezy main
# wheezy updates  
deb http://ftp.fr.debian.org/debian/ wheezy-updates main
# wheezy proposed updates
deb http://ftp.fr.debian.org/debian/ wheezy-proposed-updates main 
# wheezy-backports
deb http://ftp.fr.debian.org/debian wheezy-backports main

Les dépôts Debian Security

Un complément indispensable pour les machines tournant sur Debian stable et étant exposées sur internet.

Exemple pour wheezy, sans récupération de la liste des sources :

# wheezy security
deb http://security.debian.org/ wheezy/updates main 

Les dépôts des mainteneurs Mozilla

Ce dépôt permet d'accéder à la dernière version d'Iceweasel, le clone 100% libre10) de Firefox.

Il contient trois sections : iceweasel-release, iceweasel-beta et iceweasel-aurora associées aux versions correspondantes de Firefox.

Exemple pour récupérer la version release pour Wheezy, sans récupération de la liste des sources :

# wheezy iceweasel release
deb http://mozilla.debian.net/ wheezy-backports iceweasel-release
Si un message d'avertissement vous indique que ce dépôt est non vérifié et ses paquets non-sûrs, installez le paquet aptitude install pkg-mozilla-archive-keyring via
aptitude install pkg-mozilla-archive-keyring

Les dépôts Deb-Multimedia

Ce dépôt contient quelques paquets ne pouvant pas être hébergés par Debian car ne respectant pas les conditions de distributions. C'est en particulier le cas de la libdvdcss2 permettant de déchiffrer certains DVD protégés.

Ce dépôt ne comporte pas de section contrib.

Exemple pour wheezy, sans récupération de la liste des sources :

# wheezy deb-multimedia
deb http://www.deb-multimedia.org wheezy main non-free
Si un message d'avertissement vous indique que ce dépôt est non vérifié et ses paquets non-sûrs, installez le paquet aptitude –allow-untrusted install deb-multimedia-keyring via
aptitude install pkg-mozilla-archive-keyring

Configurations type

(en cours)

TODO

Recommandation

Avec la branche testing, il peut arriver que des paquets soient cassés ou bien que le gestionnaire de paquets rencontre des problèmes de dépendance lors de mise à jour ou de l'installation de paquets, l'un d'eux peut être momentanément absent de testing.

Donc, en pratique, il est préférable, voire essentiel, d'ajouter à son fichier sources.list11) les dépôts de la branche sid car en cas de pépin on pourra toujours aller piocher dans celle-ci pour résoudre le problème.

Bien entendu, il est alors impératif de créer un fichier preferences afin de donner une priorité inférieure à la branche sid.

En passant, aptitude gère très bien les problèmes de dépendances en proposant des choix.

Installation testing

Installer une stable pour mettre à jour vers une testing, c'est du pur masochisme.
À ne faire qu'en dernier recours, par exemple si l'installateur de la testing ne fonctionne pas.

En effet, il y a tellement de changements d'une version à une autre que la mise à jour est un processus dangereux et parfois pas très propre.
C'est à cause des difficultés de la mise à jour que l'on conseille aux gens d'attendre un mois après la sortie de la nouvelle stable avant de sauter le pas.

Nous ne parlons pas ici de la migration d'une ancienne stable12) vers la nouvelle13), car à ce moment le passage de l'un à l'autre est bien supporté au contraire.

Évolution de la branche testing

Comme pour la branche stable, lors de l'évolution d'une branche testing en stable, si vous étiez déjà en testing, il vaut mieux préalablement à cette évolution remplacer testing par son nom release (actuellement wheezy) et passer donc un temps en stable pour attendre la mise en place d'une testing moins folâtre.
Vous pourrez ensuite migrer vers la nouvelle testing en remettant, soit testing, soit le nouveau nom release issue de la branche sid.

Branche unstable

Un fichier sources.list purement unstable :

 ## ===============================================
 ## 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.deb-multimedia.org sid main non-free
 deb-src http://www.deb-multimedia.org sid main non-free
 ##  ===============================================

Il est possible d'utiliser uniquement les fichier sources.list propre à sid que l'on retrouve ci-haut, c'est ce que certaines personnes n'hésitent pas à faire.

Cependant il est conseillé d'ajouter les lignes du fichier sources testing, voire experimental dans le fichier sources.list sid ainsi en cas de problème on ira chercher temporairement des paquets dans les autres branches.

:-P:-P:-P

Exemple

Voici un exemple de situation où il est utile d'avoir un fichier sources.list plus complet.

Après avoir fait un :

aptitude safe-upgrade

Où tout semblait se dérouler correctement je me retrouve, à la fin, avec un paquet cassé. Même avec un safe-upgrade, nous ne sommes pas à l'abri de ce genre d'ennui.
Après tout les développeurs sont humains et peuvent aussi faire des erreurs.

Pour résoudre le problème, j'ai installé la version du paquet qui se trouvait dans testing avec un

aptitude reinstall le_paquet/testing

Cela a réglé temporairement le problème.
Comme les mises à jour sont rapides avec unstable, dès le lendemain une nouvelle version du paquet apportait le correctif.

Pinning

Il est encore tôt pour soutenir un pinning 07-05-2013

Le sources.list complet pour un pinning :

## ==================================================
## wheezy
deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ wheezy main contrib non-free

## wheezy multimedia
deb http://www.deb-multimedia.org wheezy main non-free
deb-src http://www.deb-multimedia.org wheezy main non-free

## wheezy security
deb http://security.debian.org/ stable/updates main contrib non-free
deb-src http://security.debian.org/ stable/updates main contrib non-free

## wheezy updates  
deb http://ftp.fr.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ wheezy-updates main contrib non-free

## wheezy-backports
deb http://ftp.fr.backports.debian.org/debian-backports wheezy-backports main contrib non-free

## ==================================================
## jessie
deb http://ftp.fr.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ jessie main contrib non-free

## jessie multimedia
deb http://www.deb-multimedia.org jessie main non-free
deb-src http://www.deb-multimedia.org jessie main non-free

## jessie security
deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/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.deb-multimedia.org sid main non-free
deb-src http://www.deb-multimedia.org sid main non-free

## ==================================================
## 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 architecture amd64)
deb http://www.deb-multimedia.org experimental main
# deb-src http://www.deb-multimedia.org experimental main

En choisissant l'installation sid, le fichier preferences n'est pas nécessaire si vous combinez tous les fichiers sources.list ci-haut car les paquets les plus récents se trouvent toujours dans le dépôt unstable. Les paquets les plus récents seront donc installés par défaut.

Dépôts miroir Multimedia :

Pour les sources debian-multimedia, en cas de problème avec celui-ci vous pouvez utiliser les dépôts miroirs pour tenter une meilleure connexion.
Soit :

 # Dépôts multimédia mirror
 deb http://mirror.home-dn.net/debian-multimedia/ wheezy main 
 deb http://mirror.home-dn.net/debian-multimedia/ jessie main
 deb http://mirror.home-dn.net/debian-multimedia/ sid main
 deb http://mirror.home-dn.net/debian-multimedia/ experimental main

Où :

  1. wheezy = stable
  2. jessie = testing
  3. sid = unstable
  4. experimental
1)
Une copie. Le dépôt est présent sur de multiples serveurs à travers le monde, on parle de miroir quand il s'agit d'une copie exacte.
2)
En ce moment, Squeeze
3)
Wheezy
4)
Jessie
5)
Sid
6)
Rc-Buggy
7)
i.e. root
8)
Attention, libreoffice est un traitement de texte pas un éditeur de texte
9)
i.e. en tant que root
10)
i.e. sans logo ni nom non-libre
12)
devenue oldstable
13)
l'ancienne testing devenue la stable
doc/systeme/apt/sources.list.1369503863.txt.gz · Dernière modification: 25/05/2013 19:44 par captnfab

Pied de page des forums

Propulsé par FluxBB