Sources de paquets : les bases

From Le Wiki de debian-fr.xyz
Revision as of 10:40, 10 September 2012 by Ggoodluck47 (talk | contribs)
Jump to navigation Jump to search

Sources de paquets : les bases

ATTENTION : Cet article est incomplet et encore en cours de rédaction, ses instructions ne peuvent pas être considérées comme fiables pour le moment !

Cette page a pour but de vous présenter les bases de la gestion des sources de paquets par APT, le système de gestion de paquets de Debian.

Il s'agit d'un approfondissement d'un tutoriel publié sur le forum que je vous conseille de lire au préalable :

https://www.debian-fr.org/sources-de-paquets-les-bases-t39329.html

Connaissances préalables

Les fichiers décrits dans cet article sont des fichiers qui ne peuvent pas être édités par un utilisateur ayant les droits par défaut sur le système.

J'assumerai donc par la suite que vous savez éditer un fichier texte en mode root.

Architecture du fichier sources.list

Le fichier /etc/apt/sources.list est celui qui indique à APT les différentes sources de paquets (appelés couramment « dépôt ») auquel le système aura accès pour télécharger de nouveaux paquets ou de nouvelles versions d'un paquet déjà installé.

C'est ce fichier qui, entre autres, détermine la version de Debian à laquelle vous aurez accès, c'est-à-dire à quels paquets et quelles versions de ces paquets vous aurez accès.

Voici à quoi ressemble un fichier sources.list :

## Debian unstable - dépôts officiels

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

## Debian testing - dépôts officiels

deb http://ftp.fr.debian.org/debian/ testing main
deb http://ftp.fr.debian.org/debian/ testing-updates main

deb http://security.debian.org/ testing/updates main

## Debian stable - dépôts officiels

deb http://ftp.fr.debian.org/debian/ stable main
deb http://ftp.fr.debian.org/debian/ stable-updates main

deb http://security.debian.org/ stable/updates main

Les lignes commençant par des dièses sont des commentaires, et ne sont pas prises en compte par APT.

Les lignes nous intéressant ici sont celles de la forme suivante :

deb http://ftp.fr.debian.org/debian/ stable main

Décortiquons donc celle que je viens de vous donner en exemple :

La première partie, « deb », peut exister sous deux formes : « deb » ou « deb-src ».

Une ligne commençant par « deb » indique à APT que cette ligne lui donnera accès à une liste de paquets pouvant être installés sur le système.

Une ligne commençant par « deb-src » donne accès aux codes source des paquets de cette même liste.

Suit une adresse Web, « http://ftp.fr.debian.org/debian/ », qui est tout simplement l'adresse du dépôt où APT pourra aller piocher des paquets.

Chaque dépôt donne généralement accès à une grande quantité de paquets, dans différentes versions. La suite de la ligne sert donc à définir lesquels de ces paquets nous souhaitons utiliser sur notre système.

Deux restrictions sont appliquées :

_La première, « stable », définit les versions de paquets auquel APT aura accès. Les valeurs les plus courantes ici sont « stable », « testing » et « unstable », mais on peut aussi utiliser un nom de version comme « squeeze », « wheezy » ou « sid ».

/!\ On ne peut mettre qu'une seul valeur à cet emplacement ! Pour utiliser plusieurs branche il faut copier la ligne et assigner à la copie une valeur différente. On ne peut par exemple pas créer une ligne de cette forme :

deb http://ftp.fr.debian.org/debian/ stable testing unstable main

_La deuxième, « main », permet de restreindre les types de licences des paquets que l'on installe, pour éviter par exemple l'installation non-désirée de paquets propriétaires sur un système libre. Les valeurs qu'on peut attribuer à cette partie sont « main », « contrib » et « non-free ». « main » correspond aux paquets sous licence libre, « contrib » aux paquets sous licence libre ayant des dépendances sous licence propriétaire, et « non-free » correspond aux paquets sous licence propriétaire.

/!\ Contrairement à la restriction de version, on peut assigner plusieurs valeurs à la restriction de licence. on peut par exemple créer une ligne de la forme suivante :

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

Petite précision : en cas de version de paquet identique se trouvant dans plusieurs dépôts déclarés dans le sources.list, APT téléchargera le paquet depuis le dépôts renseigné en premier dans le sources.list. Ce comportement n'a normalement aucune influence sur le système.

Choisir une branche

Stable, testing, unstable, sont ce qu'on appelle des branches de Debian. Ce sont ces branches qui définissent à quelles versions des paquets le système aura accès.

Squeeze, Wheezy, Sid, sont les noms de versions de Debian, et s'ils correspondent à une branche à un moment donné, cela change au cours du temps.

Un exemple simple : si je définis dans mon sources.list la branche « stable », APT installera les versions de paquets issus de cette branche à tout moment.

Lors de la sortie d'une nouvelle versions stable, APT piochera dorénavant ses paquets dans cette nouvelle stable sans que je n'ai de modification à apporter à mon sources.list.

Par contre, si je définis dans mon sources.list le nom de version « wheezy », APT installera toujours les paquets issus de cette version, qu'elle soit en testing, qu'elle soit passé en stable, ou même archivée en oldstable (une autre branche peu utilisée).

Cette seconde méthode permet un meilleur contrôle des versions de paquets en évitant que le système se mette à jour « par surprise » à la sortie d'une nouvelle version stable.

Voici un index des différentes versions de Debian pour vous aider à faire votre choix :

wheezy * La prochaine version de Debian a pour nom de code Wheezy — aucune date de sortie n'a été fixée ;
squeeze * Debian GNU/Linux 6.0 (Squeeze) — l'actuelle version stable sortie le 6 février 2011 ;
lenny * Debian GNU/Linux 5.0 (Lenny) — actuelle version oldstable ;
etch * Debian GNU/Linux 4.0 (Etch) — version stable obsolète ;
sarge * Debian GNU/Linux 3.1 (Sarge) — version stable obsolète ;
woody * Debian GNU/Linux 3.0 (Woody) — version stable obsolète ;
potato * Debian GNU/Linux 2.2 (Potato) — version stable obsolète ;
slink * Debian GNU/Linux 2.1 (Slink) — version stable obsolète ;
hamm * Debian GNU/Linux 2.0 (Hamm) — version stable obsolète.

245acf9ed15fe126ba9b31ebab022950.png

Utiliser un CD-ROM comme dépôt

Il est tout a fait possible d'utiliser un CD-ROM, DVD ou clé USB en complément ou à la place des dépôts sur Internet. Pour ajouter un CD-ROM, insérez le dans votre lecteur et utilisez la commande suivante :

# apt-cdrom add

Vous pouvez utiliser l'option -d si vous utilisez un point de montage « exotique » ou si vous utilisez une clé USB. /!\ Ce point de montage doit être spécifié dans le fichier /etc/fstab !

Extrait du man de apt-cdrom:

-d, --cdrom Point de montage ; spécifie l'emplacement de montage du CD.
Ce point de montage doit être spécifié dans /etc/fstab et correctement configuré.
Élément de configuration : Acquire::cdrom::mount.

La branche testing

La branche testing peut paraître un choix attirant, étant parfois présentée comme un compromis entre la stabilité de la stable et les versions de paquets récentes de l'unstable. C'est une erreur !

Cette branche n'est pas prévue pour un usage normal, et est uniquement proposée à des fins de test pour la conception de la future stable.

Si vous tenez tout de même à l'utiliser, il faut toujours garder en ligne de compte que des paquets peuvent à tout moment en disparaître. Il ne faut donc jamais déclarer uniquement cette branche dans votre sources.list ! Il est important d'y ajouter les sources de la version stable ou de la version unstable pour qu'APT puisse automatiquement aller y chercher les paquets qui disparaîtraient de testing, sans quoi votre système de paquets pourrait se trouver bloqué à tout moment par un paquet essentiel ayant quitté (temporairement ou non) les dépôts de la testing.


-- Vv222 (discussion) 10 septembre 2012 à 10:08 (CEST)

source

source

source