TODO: combinar com AptCLI
Procurar um pacote Debian
Métodos para pesquisar um pacote
Encontre um pacote já instalado
1. Use dpkg
Para pesquisar um pacote instalado incluindo o arquivo "toto":
dpkg -S toto
Para pesquisar um pacote "toto":
dpkg -l toto
Muitas vezes é preferível generalizar e pesquisar todos os pacotes com "toto" no nome:
dpkg -l '''toto'''
ou desse modo, com grep:
dpkg -l | grep toto
2. Use o pacote dlocate
Este programa faz mais ou menos a mesma coisa que o dpkg, mas mais rápido. Para obter mais informações, consulte man dlocate.
Encontre um pacote oficial (instalado ou não)
1. Use apt-cache (disponível desde o Debian 2.2)
O apt-cache permite pesquisar rapidamente em toda a lista de pacotes Debian disponíveis. O uso mais comum é usar a opção "search" (pesquisar) com uma expressão racional como parâmetro.
apt-cache search emacs
Isso postará os nomes de todos os pacotes contendo a expressão "emacs" no nome ou na descrição. Se deseja pesquisar apenas os pacotes com a expressão de pesquisa no nome, adicione a opção --names-only:
apt-cache search --names-only emacs
Para aprender mais sobre um pacote listado, use:
apt-cache show nome_do_pacote
Isso fornecerá uma descrição mais completa do pacote denominado "nome_do_pacote". Assim, se quisesse ver essas informações para, digamos, emacs, você usaria:
apt-cache show emacs
Uma outra opção é usar aptitude search.
aptitude search emacs
Isto fornecerá basicamente a mesma informação que o apt-cache search.
2. Pergunte aos robôs do IRC
Conecte-se ao servidor irc em irc.debian.org, entre no canal #debian (ou no canal secundário alternativo em irc.libera.chat) e: (sendo "toto" como o nome do pacote ou arquivo):
% <mt> /msg dpkg !find toto <dpkg> toto is in package: bla...bla
Para procurar um pacote em uma distribuição específica, como a estável (stable) atual denominada "squeeze", tente
% <mt> /msg dpkg !find toto squeeze
3. Pesquise no site do Debian
Tente aqui: http://www.debian.org/distrib/packages
O site do Debian já tem um mecanismo de busca embutido há algum tempo.
Um pacote que foi removido do Debian
Por várias razões, um pacote pode ter sido removido do Debian e não ser mais acessível facilmente. Neste caso, tente aqui: http://snapshot.debian.org
Este site cobre todos os pacotes Debian, incluindo aqueles que foram removidos devido a muitos bugs, problemas de segurança, etc. Contudo, não retém pacotes que foram removidos por questões de licenciamento.
O site oferece um sistema de recuperação de pacote clássico, mas configurável (fontes Debian):
- por data absoluta (AAAA/MM/DD)
- por data relativa (formato de data)
- por nome de pacote
Um pacote não oficial
Por várias razões, pode ser útil (ou necessário) instalar pacotes Debian "não oficiais", não fornecidos nas fontes oficiais do Debian. Há uma infinidade de fontes não oficiais, cada uma atendendo a uma necessidade específica (aplicativos especificamente configurados ou recompilados, por exemplo).
Temos um site para identificar e avaliar a qualidade das fontes "não oficiais".
Site para encontrar fontes não oficiais: http://www.apt-get.org (não disponível)
Um pacote aleatório?
A seguir estão dois métodos bastante gerais para localizar pacotes. O primeiro é usado para procurar um pacote (ou pode ser usado para encontrar um arquivo de configuração, com bastante facilidade), e o segundo é usado para encontrar um arquivo.
1. Execute grep nos arquivos apt-get. Isso funciona para todos os pacotes que você pode instalar com
apt-get install
ou seja, aqueles disponíveis nos repositórios listados em seu /etc/apt/sources.list .
Esses arquivos estão disponíveis em /var/lib/apt/lists
Para ter certeza de que esta lista é atual, primeiro você executa
apt-get update
Examplo : Procurar pelo pacote cddb:
awk -v RS='' '/^Package: cddb/ { print $0 "\n"; }' /var/lib/apt/lists/*Packages || pagerIsto resulta em (exemplo):
Package: cddb Priority: optional Section: sound Installed-Size: 86 Maintainer: Adrian Bridgett <bridgett@debian.org> Architecture: i386 Source: xmcd Version: 2.6-10 Replaces: xmcd (<=2.3-1) Depends: libc6 (>= 2.2.3-7) Conflicts: suidmanager (<<0.50) Filename: pool/main/x/xmcd/cddb_2.6-10_i386.deb
2. Execute o grep em um arquivo Contents-<arch_.gz (este arquivo foi feito para isso). Funciona para procurar por um pacote mesmo se não instalado da distribuição oficial (ou de pacotes não oficiais, se as fontes foram projetadas e o arquivo disponibilizado). Este arquivo pode ser encontrado em vários locais:
- Em um CD-ROM (obviamente é necessário ter o CD para que isso funcione, e isso funciona apenas para usuários(as) do Debian estável (stable)). Este arquivo é encontrado em:
% <ponto de montagem>''dists''<distribuição>/Contents-<arch>.gz
Por exemplo:
% /mnt/cdrom/dists/stable/Contents-i386.gz
- Nos sites ftp oficiais, o caminho é similar:
% <endereço ftp>''dists''<distribuição>/Contents-<arch>.gz
