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".
For more complex searches, a more powerful tool such as aptitude
is required. aptitude
allows you to search according to a logical expression based on the package's meta-data fields. For instance, the following command searches for packages whose name contains iso
, whose description contains cd
and whose maintainer's name contains joerg
:
$ aptitude search iso~dcd~mjoerg
p genisoimage - Creates ISO-9660 CD-ROM filesystem images
$ aptitude show evince
Package: genisoimage
Version: 9:1.1.11-3.4
State: not installed
Priority: optional
Section: otherosfs
Maintainer: Joerg Jaspert <joerg@debian.org>
Architecture: amd64
Uncompressed Size: 1698 k
Depends: libbz2-1.0, libc6 (>= 2.33), libmagic1 (>= 5.12), zlib1g (>= 1:1.1.4)
Suggests: wodim, cdrkit-doc
Conflicts: mkhybrid, mkisofs
Replaces: mkisofs
Provides: mkisofs
Description: Creates ISO-9660 CD-ROM filesystem images
genisoimage is a pre-mastering program for creating ISO-9660 CD-ROM filesystem
images, which can then be written to CD or DVD media using the wodim program.
genisoimage includes support for making bootable "El Torito" CDs, as well as
CDs with support for the Macintosh HFS filesystem.
The package also includes extra tools useful for working with ISO images:
* mkzftree - create ISO-9660 image with compressed contents
* dirsplit - easily separate large directory contents into disks of predefined size
* geteltorito - extract an El Torito boot image from a CD image
Please install cdrkit-doc if you want most of the documentation and README files.
Tags: hardware::storage, hardware::storage:cd, hardware::storage:dvd,
interface::commandline, role::program, scope::utility, use::storing,
works-with-format::iso9660, works-with::archive
The search only returns one package, genisoimage, which satisfies all three criteria.
Even these multi-criteria searches are rather unwieldy, which explains why they are not used as much as they could. A new tagging system has therefore been developed, and it provides a new approach to searching. Packages are given tags that provide a thematic classification along several strands, known as a “facet-based classification”. In the case of genisoimage above, the package's tags indicate that it is a storage- and more precisely CD- and DVD-related command-line utility to work with ISO9660 file-systems.
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
:
Selecting the works-with::video
and use::editing
tags yields a handful of packages, including the shotcut and pitivi video editors. This system of classification is bound to be used more and more as time goes on, and package managers will gradually provide efficient search interfaces based on it.
Per riassumere, il migliore strumento per il lavoro dipende dalla complessità della ricerca che si desidera fare:
apt-cache
permette solo la ricerca nei nomi e nelle descrizioni dei pacchetti, che è molto comodo quando si cerca un particolare pacchetto che corrisponde ad alcune parole chiave;
quando i criteri di ricerca includono anche relazioni tra i pacchetti o altri metadati come il nome del manutentore, sarà più utile synaptic
;
quando è necessaria una ricerca basata su etichette, un buon strumento è packagesearch
, un'interfaccia grafica dedicata alla ricerca dei pacchetti disponibili secondo diversi criteri (tra cui i nomi dei file in essi contenuti). Per l'uso dalla riga di comando, axi-cache
sarà adatto allo scopo.
infine, quando le ricerche comportano espressioni complesse con operazioni logiche, lo strumento da scegliere sarà la sintassi per i modelli di ricerca di aptitude
, che è piuttosto potente nonostante sia un po' oscura; funziona sia a riga di comando sia in modo interattivo.