Product SiteDocumentation Site

6.9. Recherche de paquets

Avec la quantité énorme, et sans cesse croissante, de logiciels distribués par Debian, il se manifeste un paradoxe : lorsque l'on a un besoin, la quantité de paquets disponibles rend parfois difficile la recherche d'un paquet correspondant à ce besoin. Il existe, mais il est enfoui si profond sous une myriade d'autres qu'il est introuvable. Le besoin d'outils de recherche de paquets s'est donc fait de plus en plus criant au fil du temps. Il semble que ce problème soit en passe d'être résolu.
La recherche la plus triviale correspond à une recherche sur le nom exact d'un paquet. Si apt show paquet renvoie un résultat, c'est que le paquet existe. Malheureusement, il n'est pas toujours facile de deviner le nom du paquet.
On peut aussi effectuer des recherches textuelles sur les noms des paquets, mais cela ne fait pas beaucoup avancer les choses. On n'obtient quelque chose de réellement utilisable qu'avec les recherches sur les descriptions : chaque paquet ayant, en plus de son nom, une description plus ou moins détaillée, une recherche par mots-clés pourra souvent rapporter des résultats. On utilisera pour cela apt-cache et axi-cache ; par exemple, apt-cache search video renverra la liste de tous les paquets contenant le mot-clé « video » dans leur nom ou leur description.
Si l'on souhaite effectuer des recherches plus complexes, on pourra utiliser aptitude, qui permet de spécifier une expression logique portant sur différents champs des paquets. Par exemple, on pourra obtenir la liste des paquets dont le nom contient kino, la description video et le nom du responsable paul :
$ aptitude search kino~dvideo~mpaul
p   kino  - Non-linear editor for Digital Video data
$ aptitude show kino
Paquet : kino
État: non installé
Version : 1.3.4-2.1+b1
Priorité : supplémentaire
Section : video
Responsable : Paul Brossier <piem@debian.org>
Architecture : amd64
Taille décompressée : 8 472 k
Dépend: libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libavc1394-0 (>=
        0.5.3), libavcodec56 (>= 6:11~beta1) | libavcodec-extra-56 (>=
        6:11~beta1), libavformat56 (>= 6:11~beta1), libavutil54 (>=
        6:11~beta1), libc6 (>= 2.14), libcairo2 (>= 1.2.4), libdv4,
        libfontconfig1 (>= 2.11), libfreetype6 (>= 2.2.1), libgcc1 (>=
        1:4.1.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglade2-0 (>= 1:2.6.4-2~),
        libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>= 2.24.0), libice6 (>=
        1:1.0.0), libiec61883-0 (>= 1.2.0), libpango-1.0-0 (>= 1.14.0),
        libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0),
        libquicktime2 (>= 2:1.2.2), libraw1394-11, libsamplerate0 (>= 0.1.7),
        libsm6, libstdc++6 (>= 4.9), libswscale3 (>= 6:11~beta1), libx11-6,
        libxext6, libxml2 (>= 2.7.4), libxv1, zlib1g (>= 1:1.1.4)
Recommande: ffmpeg, curl
Suggère: udev | hotplug, vorbis-tools, sox, mjpegtools, lame, ffmpeg2theora
Est en conflit: kino-dvtitler, kino-dvtitler, kino-timfx, kino-timfx, kinoplus, kinoplus, kino
Remplace: kino-dvtitler, kino-dvtitler, kino-timfx, kino-timfx, kinoplus, kinoplus
Fournit: kino-dvtitler, kino-timfx, kinoplus
Description : Non-linear editor for Digital Video data
 Kino allows you to record, create, edit, and play movies recorded with DV
 camcorders. This program uses many keyboard commands for fast navigating and
 editing inside the movie. 
 
 The kino-timfx, kino-dvtitler and kinoplus sets of plugins, formerly
 distributed as separate packages, are now provided with Kino.
Site : http://www.kinodv.org/

Étiquettes: field::arts, hardware::camera, implemented-in::c, implemented-in::c++,
            interface::x11, role::program, scope::application, suite::gnome,
            uitoolkit::gtk, use::editing, use::learning, works-with::video,
            x11::application
Le résultat ne contient ici qu'un paquet, kino, qui satisfait bien les trois conditions requises.
Ces recherches multi-critères manquent un peu de flexibilité et ne sont donc pas toujours utilisées au maximum de leur puissance. Il a donc été mis en place un système de « marqueurs » ou « étiquettes » (en anglais, tags), qui propose une autre approche de la recherche. Ces étiquettes correspondent à une classification thématique des paquets selon plusieurs axes, appelée « classification à facettes ». Pour reprendre l'exemple de kino ci-dessus, on constate que ce paquet se présente sous la forme d'une interface graphique (qui utilise GTK), qu'il s'agit d'un logiciel Gnome, que sa fonction principale est l'édition et qu'il travaille sur des données de type vidéo.
Il est alors possible de naviguer dans cette classification, à la recherche d'un paquet correspondant aux besoins, ou du moins d'un petit nombre de paquets parmi lesquels on pourra faire le tri manuellement. Pour cela, on pourra soit utiliser le motif de recherche ~G dans aptitude, soit plus simplement naviguer vers le site qui centralise les étiquettes :
Si l'on sélectionne les étiquettes works-with::video et use::editing, on obtient une poignée de paquets, notamment les logiciels de montage vidéo kino et pitivi. Ce système de classification a vocation à être de plus en plus utilisé au fil du temps, à mesure que les outils de gestion de paquets fourniront des interfaces de recherche efficaces qui en tirent parti.
En résumé, selon la complexité des recherches que l'on souhaite mener, on utilisera un programme adapté :