Product SiteDocumentation Site

6.10. Ricercare pacchetti

Con la grande e sempre crescente quantità di software in Debian, emerge un paradosso: Debian solitamente ha uno strumento per la maggior parte delle necessità, ma quel programma può essere veramente difficile da trovare fra la miriade di altri pacchetti. La mancanza di un modo appropriato per cercare (e trovare) il giusto programma è stata a lungo un problema. Fortunatamente, questo problema è stato quasi completamente risolto.
La ricerca più banale possibile è la ricerca con il nome esatto di un pacchetto. Se apt show pacchetto restituisce un risultato, allora quel pacchetto esiste. Sfortunatamente, questo richiede di conoscere o anche di indovinare il nome del pacchetto, e ciò non è sempre possibile.
Un modello di ricerca che ha un po' più successo è una ricerca di testo con testo semplice fra i nomi dei pacchetti, ma rimane molto limitato. In genere si possono trovare risultati cercando nelle descrizioni dei pacchetti: poiché ogni pacchetto ha una descrizione più o meno dettagliata, oltre al suo nome del pacchetto, una ricerca per parole chiave nelle descrizioni sarà spesso utile. apt-cache e axi-cache sono gli strumenti preferenziali per questo tipo di ricerca (vedere ALTERNATIVA axi-cache); per esempio, apt-cache search video restituirà un elenco di tutti i pacchetti il cui nome o descrizione contiene la parola "video".
Per ricerche più complesse, è necessario uno strumento più potente come aptitude. aptitude permette di cercare usando un'espressione logica basata sui campi dei metadati dei pacchetti. Per esempio, il seguente comando cerca i pacchetti il cui nome contiene kino, la cui descrizione contiene video e il cui nome del manutentore contiene paul:
$ aptitude search kino~dvideo~mpaul
p   kino  - Non-linear editor for Digital Video data
$ aptitude show kino
Package: kino                     
Version: 1.3.4+dfsg0-1.1
State: not installed
Priority: optional
Section: video
Maintainer: Paul Brossier <piem@debian.org>
Architecture: amd64
Uncompressed Size: 8,316 k
Depends: libasound2 (>= 1.0.16), libavc1394-0 (>= 0.5.3), libavcodec58 (>= 7:4.2),
         libavformat58 (>= 7:4.2), libavutil56 (>= 7:4.0), libc6 (>= 2.29), libdv4
         (>= 1.0.0), libgcc-s1 (>= 3.0), libgdk-pixbuf-2.0-0 (>= 2.22.0),
         libglade2-0 (>= 1:2.6.4-2~), libglib2.0-0 (>= 2.12.0), libgtk2.0-0 (>=
         2.24.0), libiec61883-0 (>= 1.2.0), libpango-1.0-0 (>= 1.14.0),
         libpangoft2-1.0-0 (>= 1.14.0), libquicktime2 (>= 2:1.2.2), libraw1394-11
         (>= 2.1.2), libsamplerate0 (>= 0.1.7), libstdc++6 (>= 9), libswscale5 (>=
         7:4.0), libx11-6, libxext6, libxml2 (>= 2.7.4), libxv1
Recommends: ffmpeg, curl
Suggests: udev | hotplug, vorbis-tools, sox, mjpegtools, lame, ffmpeg2theora
Conflicts: kino-dvtitler, kino-timfx, kinoplus, kino-dvtitler:i386,
           kino-timfx:i386, kinoplus:i386, kino:i386
Replaces: kino-dvtitler, kino-timfx, kinoplus, kino-dvtitler:i386,
          kino-timfx:i386, kinoplus:i386
Provides: 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.
Homepage: http://www.kinodv.org/
Tags: field::arts, hardware::camera, implemented-in::c, implemented-in::c++,
      interface::graphical, interface::x11, role::program, scope::application,
      suite::gnome, uitoolkit::gtk, use::editing, use::learning,
      works-with::video, x11::application
Il risultato mostra solo un pacchetto, kino, che soddisfa tutti e tre i criteri.
Anche queste ricerche con più criteri sono poco maneggevoli, il che spiega il motivo per cui non siano usate quanto potrebbero. È stato perciò sviluppato un nuovo sistema di etichettatura (tag in inglese) che fornisce un nuovo approccio alla ricerca. Ai pacchetti sono assegnate delle etichette che forniscono una classificazione tematica su varie aree, nota come "classificazione basata sulle sfaccettature". Nel caso di kino qui sopra, le etichette del pacchetto indicano che Kino è un software basato su Gnome che funziona sui dati video e il cui scopo principale è la modifica.
Sfogliare questa classificazione può aiutare a cercare un pacchetto che corrisponda alle esigenze note; anche se restituisce un numero (moderato) di risultati, il resto della ricerca può essere fatto manualmente. Per farlo, si può usare lo schema di ricerca ~G in aptitude, ma probabilmente è più facile navigare semplicemente nel sito dove sono gestite le etichette (tag in inglese) o usare il comando debtags:
$ debtags search "works-with::video && use::editing"
Se si selezionano le etichette works-with::video e use::editing, si ottengono una manciata di pacchetti, inclusi gli editor video kino e pitivi. Questo sistema di classificazione è destinato ad essere usato sempre di più col passare del tempo, e i gestori dei pacchetti forniranno gradualmente interfacce di ricerca efficienti basate su di esso.
Per riassumere, il migliore strumento per il lavoro dipende dalla complessità della ricerca che si desidera fare: