[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ suivant ]


Apt howto
Chapitre 5 - Obtenir des informations sur les paquets.


Il existe quelques interfaces au système APT qui simplifient de manière significative l'obtention de listes de paquets pouvant être installés ou déjà installés, aussi bien pour trouver dans quelle section est le paquet, que sa priorité, sa description, etc.

Mais... notre but ici est d'apprendre à utiliser APT. Comment pouvez-vous trouver le nom d'un paquet que vous voulez installer ?

C'est ce à quoi ce chapitre tente de répondre. Regardons maintenant les options disponibles.


5.1 Découvrir le nom des paquets

Supposez par exemples que vous vouliez vous replonger dans les bons vieux jours de l'Atari 2600. Vous voulez utiliser APT pour installer un émulateur Atari, puis installer quelques jeux. Vous pouvez faire :

     $ aptitude search atari
     p   atari-fdisk-cross               - Partition editor for Atari (running on no
     p   atari800                        - Atari emulator for X/curses/SDL
     p   console-keymaps-atari           - Keymaps for Atari keyboards.

Nous avons trouvé plusieurs paquets en relation avec ce que nous cherchons avec de brèves descriptions. La lettre p au début de la ligne est similaire à la notation utilisée dans l'interface curses utilisée par aptitude. Cela signifie donc que le paquet n'est pas installé. Remarque importante, par défaut aptitude ne recherche que dans les noms des paquets. Vous pouvez utiliser toutes les options de recherche fournies par aptitude que vous pouvez découvrir en lisant le manuel de l'utilisateur d'aptitude. Pour faire une recherche dans les descriptions, vous pouvez utiliser par exemple :

     $ aptitude search ~datari
     p   aranym                          - Atari Running on Any Machine
     p   atari-fdisk-cross               - Partition editor for Atari (running on no
     p   atari800                        - Atari emulator for X/curses/SDL
     p   circuslinux                     - The clowns are trying to pop balloons to
     p   circuslinux-data                - Data files for circuslinux
     p   console-keymaps-atari           - Keymaps for Atari keyboards.
     [...]
     p   stella                          - Atari 2600 Emulator for SDL & X windows
     [...]

Maintenant, comme nous pouvons le voir, cela retourne beaucoup plus de paquets. Maintenant que nous avons trouvé une liste possible de solutions à notre problème, allons un peu plus en profondeur :

     $ aptitude show stella
     Package: atari-fdisk-cross
     Version: 0.7.1-5
     Priority: extra
     Section: otherosfs
     Maintainer: Roman Hodek <roman@hodek.net$gt;
     Uncompressed Size: 106k
     Description: Partition editor for Atari (running on non-Atari)
      Atari-fdisk allows you to create and edit the partition table of a disk
      partitioned in Atari format. It supports both the AHDI 5.0 and ICD variations
      of the Atari format. It is an interactive tool with a menu similar to PC
      fdisk, and also supports most options of PC fdisk.

Sur cette sortie d'écran vous avez beaucoup de détails sur le paquet que vous voulez (ou que vous ne voulez pas) installer avec la description complète du paquet. Vous pouvez aussi utiliser le programme apt-cache pour obtenir ce type d'informations. Si vous choisissez cet outil, il sera capable d'afficher plusieurs versions d'un paquet disponible, par exemple :

     $ apt-cache show muine
     Package: muine
     Version: 0.5.0-1
     Priority: optional
     Section: gnome
     Maintainer: Link Dupont <link@subpop.net>
     Depends: gstreamer-gconf (>= 0.6.4), libatk1.0-0 (>= 1.4.1), libbonobo2-0 (>=2.4.3), libc6 (>= 2.3.2.ds1-4), libflac4, libgconf2-4 (>= 2.4.0.1), libgdbm3, libglib2.0-0 (>= 2.2.3), libgnomevfs2-0 (>= 2.4.1), libgnomevfs2-common (>=2.4.1), libgstreamer0.6-0 (>= 0.6.1-2), libgtk2.0-0 (>= 2.2.1), libid3tag0 (>= 0.15.0b), libogg0 (>= 1.1.0), liborbit2 (>= 1:2.8.0), libpango1.0-0 (>= 1.2.1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libxml2 (>= 2.6.7), zlib1g (>= 1:1.2.1), gconf2 (>= 2.4.0), mono-jit (>= 0.30) | cli-virtual-machine, gtk-sharp (>= 0.17), gconf-sharp (>= 0.17), gnome-sharp (>= 0.17)
     Architecture: i386
     Filename: ./pool/main/m/muine/muine_0.5.0-1_i386.deb
     Size: 164314
     Installed-Size: 692
     MD5sum: 9885f13e5ef4f76b3bf6fe7bb3ea8634
     Description: Simple music player
      Muine is an innovative music player. It has a simple interface designed to
      allow the user to easily construct playlists from albums and/or single songs.
      Its goal is to be simply a music player, not to become a robust music
      management application.
     
     Package: muine
     Priority: optional
     Section: gnome
     Installed-Size: 492
     Maintainer: Link Dupont <link@subpop.net>
     Architecture: i386
     Version: 0.4.0-8
     Depends: gstreamer-gconf (>= 0.6.4), libatk1.0-0 (>= 1.4.1), libbonobo2-0 (>= 2.4.3), libc6 (>= 2.3.2.ds1-4), libflac4, libgconf2-4 (>= 2.4.0.1), libgdbm3, libglib2.0-0 (>= 2.2.3), libgnomevfs2-0 (>= 2.4.1), libgnomevfs2-common (>= 2.4.1), libgstreamer0.6-0 (>= 0.6.1-2), libgtk2.0-0 (>= 2.2.1), libid3tag0 (>= 0.15.0b), libogg0 (>= 1.1.0), liborbit2 (>= 1:2.8.0), libpango1.0-0 (>= 1.2.1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libxml2 (>= 2.6.6), zlib1g (>= 1:1.2.1), gconf2 (>= 2.4.0), mono-jit (>= 0.30) | cli-virtual-machine, gtk-sharp (>= 0.16), gconf-sharp (>= 0.16), gnome-sharp (>= 0.16)
     Filename: pool/main/m/muine/muine_0.4.0-8_i386.deb
     Size: 139864
     MD5sum: e746709ad6a6fcc1e9c46b46b3d6e5b2
     Description: Simple music player
      Muine is an innovative music player. It has a simple interface designed to
      allow the user to easily construct playlists from albums and/or single songs.
      Its goal is to be simply a music player, not to become a robust music
      management application.

Pour des informations plus générales sur un paquet vous pouvez utiliser :

     # apt-cache showpkg penguin-command
     Package: penguin-command
     Versions:
     1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_binary-i386_Packages)(/var/lib/dpkg/status)
     
     Reverse Depends:
     Dependencies:
     1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0)
     libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3)
     Provides:
     1.4.5-1 -
     Reverse Provides:

Et pour trouver seulement les paquets dont il dépend :

     # apt-cache depends penguin-command
     penguin-command
       Depends: libc6
       Depends: libpng2
       Depends: libsdl-mixer1.1
       Depends: libsdl1.1
       Depends: zlib1g

En résumé, nous avons tout une panoplie d'armes que nous pouvons utiliser pour trouver le nom d'un paquet que l'on veut.


5.2 Utilisation de dpkg pour trouver le nom des paquets

L'une des manières de trouver le nom d'un paquet est de connaître le nom d'un fichier important du paquet. Par exemple, pour trouver le paquet qui contient un fichier « .h » particulier dont vous avez besoin pour compiler, vous pouvez lancer :

     $ dpkg -S stdio.h
     libc6-dev: /usr/include/stdio.h
     libc6-dev: /usr/include/bits/stdio.h
     perl: /usr/lib/perl/5.6.0/CORE/nostdio.h

Ou :

     $ dpkg -S /usr/include/stdio.h
     libc6-dev: /usr/include/stdio.h

Remarquez que cette méthode fonctionne seulement pour trouver les noms des paquets déjà installés sur votre système. Pour rechercher des fichiers qui ne sont pas installés, vous aurez besoin d'auto-apt (regardez Comment installer des paquets « à la demande », Section 6.1) ou d'apt-file (regardez Comment découvrir quel paquet contient quel fichier, Section 5.3). Vous pouvez aussi jeter un oeil au site http://packages.debian.org/. Pour lister les noms des paquets installés sur votre système, ce qui est utile, si vous prévoyez de faire le ménage sur votre disque dur par exemple, vous pouvez lancer :

     $ dpkg -l | grep mozilla
     ii  mozilla-browse 0.9.6-7        Mozilla Web Browser

Le problème avec cette commande, c'est qu'elle peut couper le nom du paquet. Dans l'exemple ci-dessus, le nom complet du paquet est mozilla-browser. Pour corriger ce problème, vous pouvez utiliser la variable d'environnement COLUMNS de cette manière :

     $ COLUMNS=132 dpkg -l | grep mozilla
     ii  mozilla-browser             0.9.6-7                     Mozilla Web Browser
     - core and browser

5.3 Comment découvrir quel paquet contient quel fichier

Si vous voulez installer un paquet dont vous n'arrivez pas à trouver son nom en recherchant avec apt-cache mais que vous connaissez le nom du programme lui-même, ou d'autres fichiers qui sont fournis avec ce paquet. Vous pouvez alors utiliser apt-file, qui est inclus dans le paquet du même nom, pour trouver le nom du paquet. Cela se fait comme ceci :

     $ apt-file search nomdefichier

Le fonctionnement est le même que celui de dpkg -S, mais il vous affichera aussi les paquets non installés qui contiennent ce fichier. Il peut aussi être utilisé pour trouver quels paquets contiennent les fichiers nécessaires à la compilation de vos programmes, mais qu'auto-apt soit une meilleure méthode pour résoudre ces problèmes, voyez Comment installer des paquets « à la demande », Section 6.1.

Vous pouvez aussi lister le contenu d'un paquet en lançant :

     $ apt-file list nomdepaquet

apt-file conserve une base de données des fichiers contenus par tous les paquets, comme le fait auto-apt, elle a donc besoin d'être mise à jour. Cela se fait en lançant :

     # apt-file update

Par défaut, apt-file utilise la même base de données que celle utilisée par auto-apt, regardez la section Comment installer des paquets « à la demande », Section 6.1.


5.4 Informations sur les paquets sur le Web

Il y a beaucoup de ressources sur le Web avec des informations sur les paquets disponibles dans la distribution Debian, la plupart d'entre elles sont tournées vers les développeurs Debian, mais beaucoup d'entre-elles peuvent être aussi utiles aux utilisateurs.

Les pages sur les paquets Debian vous permettent de rechercher des paquets disponibles sur les différentes architectures que supporte Debian. Ces pages vous permettent aussi de rechercher dans le contenu de tous les paquets Debian. Il y a des informations sur les dépendances et les autres relations entre les paquets. Il y a aussi des liens pour télécharger les paquets sources et les paquets binaires pour toutes les architectures. Pour avoir un accès rapide à un paquet, vous pouver utiliser le raccourcis http://packages.debian.org/nomdepaquet.

Le système de suivi des paquets fournit des informations sur les changements récents des paquets, les choses à faire du point de vue du responsable Debian, il fournit aussi un résumé des bogues signalés et quelques informations supplémentaires utiles. L'une des choses utiles du Système de suivi des paquets est que l'on peut « s'inscrire » à un paquet pour suivre tous les courriels à propos d'un paquet que le responsable reçoit habituellement. De cette manière, vous pouvez suivre le développement des paquets cruciaux pour votre travail ou votre jeu. Le raccourcis http://packages.qa.debian.org/nomdepaquet fonctionne ici aussi.

Enfin, le système de gestion des bogues fournit des informations sur les bogues connus des paquets distribués par Debian. Cela peut vous être utile pour trouver pourquoi quelque chose ne fonctionne pas comme vous le souhaiteriez et même trouver des solutions ou des moyens de contournements dans les journaux des bogues. Lisez aussi ces pages et leur documentation pour être capable de faire de bons rapports de bogues pour Debian. Le raccourcis http://bugs.debian.org/nomdepaquet fonctionne ici aussi, comme prévu. Mais le BTS (Bug Tracking System) accepte aussi d'autres raccourcis très utiles comme, par exemple, http://bugs.debian.org/src:nomdupaquet pour afficher tous les rapports de bogues de tous les paquets binaires fournis par un paquet source donné.


[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ suivant ]


Apt howto

1.9.3 - novembre 2004

Gustavo Noronha Silva kov@debian.org
Traduction de Julien Louis leonptitlouis@ifrance.com