Product SiteDocumentation Site

6.10. Vyhledávání balíčků

S velkých a stále se rozrůstajícím počtem softwaru v Debianu, se vynořil paradox: Debian obvykle má nástroj pro většinu úkolů, ale tento nástroj může být velice obtížné nalézt mezi spoustou jiných balíčků. Chybějící vhodné způsoby k vyhledávání (a nalezení) správného nástroje byl dlouho problém. Tento problém byl naštěstí téměř úplně vyřešen.
Nejtriviálnějším možným vyhledáváním je hledání přesného jména balíčku. Pokud apt show balíček vrátí výsledek, potom balíček existuje. Naneštěstí, toto vyžaduje znalost nebo alespoň odhad jména balíčku, což není vždy možné.
A slightly more successful searching pattern is a plain-text search in package names, but it remains very limited. You can generally find results by searching package descriptions: since each package has a more or less detailed description in addition to its package name, a keyword search in these descriptions will often be useful. apt-cache and axi-cache are the tools of choice for this kind of search (see ALTERNATIVA axi-cache); for instance, apt-cache search video will return a list of all packages whose name or description contains the keyword “video”.
Pro komplexnější hledání potřeba mocnějšího nástroje jako je aptitude. aptitude vám umožňuje vyhledávání podle logického výrazu založeném v polích metadat balíčku. Například, následující příkaz hledá balíčky, jejichž jméno obsahuje kino, popis obsahuje video a správcovo jméno obsahuje 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
State: not installed
Priority: optional
Section: video
Maintainer: Paul Brossier <piem@debian.org>
Architecture: amd64
Uncompressed Size: 8,304 k
Depends: libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libavc1394-0 (>= 0.5.3), libavcodec58 (>=
         7:4.0) | libavcodec-extra58 (>= 7:4.0), libavformat58 (>= 7:4.0), libavutil56 (>= 7:4.0),
         libc6 (>= 2.14), libcairo2 (>= 1.2.4), libdv4 (>= 1.0.0), libfontconfig1 (>= 2.12.6),
         libfreetype6 (>= 2.2.1), libgcc1 (>= 1:3.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglade2-0
         (>= 1:2.6.4-2~), libglib2.0-0 (>= 2.16.0), libgtk2.0-0 (>= 2.24.32), 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 (>= 5.2), libswscale5 (>= 7:4.0), libx11-6, libxext6,
         libxml2 (>= 2.7.4), libxv1, zlib1g (>= 1:1.1.4)
Recommends: ffmpeg, curl
Suggests: udev | hotplug, vorbis-tools, sox, mjpegtools, lame, ffmpeg2theora
Conflicts: kino-dvtitler, kino-timfx, kinoplus
Replaces: kino-dvtitler, kino-timfx, kinoplus
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
Vyhledávání vrátí jeden balíček, kino, který vyhovuje všem třem kritériím.
Tato multikriteriální vyhledávání jsou, dá se říci, těžkopádná, což vysvětluje proč nejsou tak moc využívána, jak by mohla být. Proto byl vyvinut nový systém štítků (tagů) co poskytuje nový přístup k vyhledávání. Balíčkům se dají štítky, které poskytují tématické zařazení zároveň s několika standardy známými jako “facet-based classification”. V případu kino popsaného výše, štítky balíčku značí, že Kino je software založený na softwaru Gnome, který pracuje na video datech a jehož hlavním účelem je střih.
Browsing this classification can help you to search for a package which corresponds to known needs; even if it returns a (moderate) number of hits, the rest of the search can be done manually. To do that, you can use the ~G search pattern in aptitude, but it is probably easier to simply navigate the site where tags are managed:
Vybráním štítků works-with::video a use::editing vyplodí pár balíčků, včetně video editorů kino a pitivi. Tento systém třídění je stále více upřednostňován a správci balíčků budou stále více poskytovat efektivní vyhledávací rozhraní na něm založených.
Abychom to shrnuli, nejlepší nástroj pro takový úkol závisí na komplexnosti vyhledávání, které si přejete provést: