Translation(s): English - Français

Rechercher un paquet Debian

Méthodes de recherche de paquets

Un paquet déjà installé ?

1. Utiliser dpkg

Pour chercher un paquet installé contenant le fichier toto :

      dpkg -S toto

Pour chercher le paquet toto :

      dpkg -l toto

Il est bien souvent préférable de généraliser, et chercher tous les paquets ayant toto dans leur nom :

      dpkg -l '''toto'''

ou encore

      dpkg -l | grep toto

2. Utiliser le paquet dlocate

En fait, ce programme fait plus ou moins la même chose que dpkg , mais il le fait bien plus vite. Pour plus d'information, voir : man dlocate

Un paquet officiel (installé ou non) ?

1. Utiliser apt-cache (existe depuis Debian 2.2)

apt-cache permet de rechercher rapidement parmi la liste des paquets disponibles. Son utilisation la plus courante est avec l'option search qui prend une expression rationnelle en paramètre.

 apt-cache search emacs

affichera tous les noms des paquets, avec une description courte, dont le nom ou la description contient le mot emacs. Pour faire une recherche uniquement sur les noms des paquets, ajouter l'option ---names-only :

 apt-cache search --names-only emacs

 apt-cache show nom-paquet

fournira une description plus complète du paquet nommé.

2. Demander aux robots irc

Se connecter en irc au serveur irc.debian.org, canal #debian, puis : (avec toto le nom du paquet ou du fichier)

  % <mt> /msg dpkg !find toto <dpkg> toto is in package:
  bla...bla

Si tu ne veux pas chercher dans la distribution instable, mais dans, par exemple slink, c'est pas plus dur :

  % <mt> /msg dpkg !find toto slink

3. Chercher sur les pages faites pour ça

Les dites pages: http://www.fr.debian.org/distrib/packages.

Un paquet retiré de Debian

Pour diverses raisons un paquet peut être retiré de Debian et ne plus être facilement accessible. Une piste de recherche : http://snapshot.debian.net

Ce site recense tous les paquets debian, y compris ceux qui ont été éliminés de Debian pour cause de bugs trop nombreux, de failles de sécurité... Toutefois le site ne conserve pas les paquets qui posent des problèmes de licence.

Le site propose un mécanisme classique de récupération de paquet (sources Debian) mais paramétrable :

  • par date absolue (YYYY/MM/DD)
  • par date relative (format date)
  • par nom de paquet

Un paquet non-officiel

Pour de multiples raisons, il peut être utile (ou nécessaire) d'installer des paquets Debian «non officiels» càd non-fournis par une source Debian officielle. Il existe une multitude de sources non-officielles, chacune répondant à un besoin particulier (applications spécifiquement paramétrées ou recompilées ...).

Un site est mis en place pour recenser et évaluer la qualité de ces sources «non-officielles».

Site de recensement des sources non-officielles http://www.apt-get.org

Un paquet quelconque ?

Dans ce qui suit, il y a deux méthodes on ne peut plus générales. La première est utilisée pour chercher un paquet (quoiqu'on puisse l'adapter pour chercher un fichier de configuration sans problème), et la deuxième est utilisée pour chercher un fichier.

1. Faire un grep brutal sur les fichiers de apt-get. Cela fonctionne pour tous les paquets qu'on pourrait installer d'un

  apt-get install

(c'est à dire disponibles sur l'un des sites listés dans /etc/apt/sources.list )

Ces fichiers sont accessibles dans le répertoire /var/lib/apt/lists .

Exemple : Chercher le paquet cddb

 grep -h -15 "Package: cddb" /var/lib/apt/lists/* || pager
  • Le '-h' est pour se passer du nom du fichier dans lequel on a trouvé l'occurrence.
  • Le -15 pour grep est pour voir 15 lignes avant et 15 lignes après chaque occurrence de la recherche.
  • Préciser « Package: » pour n'avoir que le paquet cddb, et pas les paquets qui dépendent ou qui sont en conflit avec lui.

ça donne (entre autres déchets) :

 Package: cddb 
 Priority: optional 
 Section: sound 
 Installed-Size: 86
 Maintainer: Adrian Bridgett <bridgett@debian.org> 
 Architecture: i386
 Source: xmcd 
 Version: 2.6-10 
 Replaces: xmcd (<=2.3-1) 
 Depends: libc6  (>= 2.2.3-7) 
 Conflicts: suidmanager (<<0.50) 
 Filename:  pool/main/x/xmcd/cddb_2.6-10_i386.deb

2. Faire un grep sur un fichier Contents-<arch>.gz (Ce fichier est fait pour ça). Ça marche pour chercher un fichier dans un paquet même non installé de la distribution officielle (et peut-être pour des non officiels, si les sources sont assez bien conçues pour mettre un tel fichier à disposition). On peut trouver ce fichier à divers endroits :

  • Sur CD (il faut évidemment un CD pour cela. Donc, a priori, c'est réservé aux utilisateurs de la version stable). Ce fichier se cache à :

  % <point de montage>''dists''<distribution>/Contents-<arch>.gz

Par exemple, chez moi c'est :

  % /mnt/cdrom/dists/stable/Contents-i386.gz
  • Sur les sites ftp officiels, à peu près au même endroit :

  % <archive  ftp>''dists''<distribution>/Contents-<arch>.gz