Merhaba, Debian paketleri (uzunca) bir suredir "debtags" denilen paket etiketleriyle siniflaniyor[1]. Bu paket etiketlerini paket aciklamasinin hemen altindaki "Tag:" alaninda gorebilirsiniz:
$ apt-cache show bash
Package: bash
...
Description: The GNU Bourne Again SHell
Bash is an sh-compatible command language interpreter that executes
commands read from the standard input or from a file. Bash also
incorporates useful features from the Korn and C shells (ksh and csh).
.
Bash is ultimately intended to be a conformant implementation of the
IEEE POSIX Shell and Tools specification (IEEE Working Group 1003.2).
.
Included in the bash package is the Programmable Completion Code, by
Ian Macdonald.
==> Tag: interface::shell, made-of::lang:c, role::sw:utility,
uitoolkit::ncurses
Tabii bu etiketler bosuna hazirlanmiyor. Debian paket arsivi cok buyudu.
Paket etiketleri belirli bir anahtar kelimeyle (etiket) iliskili paketleri
bir arada gormeyi, listelemeyi sagliyor. Sistemden yararlanmak icin ayni
isimli paketle gelen debtags aracini kullanmaniz gerekiyor. Ornek birkac
soruyla cok basit bir giris yapayim. Daha ayrintili bilgi icin debtag(1)
kilavuz sayfasina bakabilirsiniz[2]:
"Debian'da CD yazmak/yakmak icin ne programlar var?"
* Once debtags'i kuralim.
$ sudo apt-get install debtags
* Anahtar kelime (yani "tag") ne olabilir? "CD" makul bir tahmin
olarak gozukuyor.
$ debtags tagsearch cd
hardware::storage:cd - CD - Compact Disc
works-with::archive:iso9660 - ISO 9660 CD Filesystem
* Veya soruyu soyle duzenlersek "Debian arsivinde xcdroast programina
secenek olarak hangi paketler mevcut?", xcdroast'un etiketlerine
bakarak hedef etiketleri bulabiliriz[3]:
$ apt-cache show xcdroast
veya
$ debtags show xcdroast
Package: xcdroast
...
Tag: hardware::storage:cd, ...
* Baslangic noktasi olarak "hardware::storage:cd" etiketi kullanilacak
olursa:
$ debtags search hardware::storage:cd
abcde - A Better CD Encoder
...
yaret - A console tool to turn CDs into encoded music
* Yukaridaki komut 123 paket listeler. Aramayi biraz daha daraltalim.
Kitaplik paketlerini dislamak icin "interface" etiketini secebiliriz.
Sadece kayitta kullanilan paketler icin "use::storing"i ekleyelim,
kodlama (encoding) yapanlari dislamak icin "use::converting"i
kullanalim.
$ debtags search "hardware::storage:cd && \
interface::* && \
use::storing && ! use::converting"
* Sadece GNOME'da veya komut satirinda calisan paketleri bulmak icin de
soyle bir komut kullanilabilirdi:
$ debtags search "hardware::storage:cd && \
(suite::gnome || interface::commandline) && \
use::storing && ! use::converting"
Debtags ozellikle bir programlama diline/gelistirme ortamina iliskin
paketleri bulmak da cok yararli oluyor. Fakat paketlerin tamami henuz
etiketlenmediginden arama sonuclari eksik gelebilir. Mesela Lisp
programlama ile ilgili paketleri bulmak icin:
$ debtags search devel::lang:lisp
veya daha iyisi
$ debtags search "devel::lang:lisp && \
((works-with::software:source || devel::doc)"
komutlari kullanilabilir, ama sonuclar arasinda SLIME yok mesela, cunku
etiketleri hazir degil.
[1] http://debtags.alioth.debian.org/
[2] Baska kisa bir tanitim yazisi da debian-administration portalinde
mevcut:
http://www.debian-administration.org/articles/192
[3] Debtags bir paketle iliskili diger paketleri bulmak icin 'related'
secenegini sunuyor. Fakat bu secenek bir tur "iliski uzakligi"
algoritmasi kullandigindan beklediginiz gibi calismayabilir. Mesela
xcdroast ile iliskili paketleri listelerken ontanimli uzaklik yeterli
gelmiyor. Bu tip durumlarda soyle bir komut kullanabilirsiniz:
debtags -d 5 related xcdroast
--
roktas
signature.asc
Description: Digital signature

