diff options
Diffstat (limited to 'tags/0.5/doc/README.simplaret.pt_BR')
-rw-r--r-- | tags/0.5/doc/README.simplaret.pt_BR | 445 |
1 files changed, 445 insertions, 0 deletions
diff --git a/tags/0.5/doc/README.simplaret.pt_BR b/tags/0.5/doc/README.simplaret.pt_BR new file mode 100644 index 0000000..672eb8e --- /dev/null +++ b/tags/0.5/doc/README.simplaret.pt_BR @@ -0,0 +1,445 @@ +simplaret: ferramenta para obtenção de pacotes +---------------------------------------------- + +O simplaret é a ferramenta do simplepkg utilizada para obter pacotes de repositórios locais +ou remotos. Com ele, você pode não só baixar pacotes do seu sistema Slackware como também pode +baixar de qualquer versão ou arquitetura cujo repositório siga os Mirror Guidelines do Slackware, +como por exemplo Slamd64 e Slackintosh, permitindo que você gerencie facilmente todas as suas +jaulas e instalações de Slackware, independentemente da arquitetura ou versão que elas utilizem. + +Além da obtenção, o simplaret ainda pode fazer a instalação, a remoção ou a atualização dos +pacotes de um sistema e também das demais jaulas existentes numa máquina. + +O simplaret é totalmente não-intrusivo no sistema e roda sobre o pkgtool. + +Documentação +------------ + +A documentação atualizada do simplaret se encontra em http://slack.sarava.org/simplaret. + +Obtendo e instalando +-------------------- + +O simplaret acompanha o simplepkg e por isso sua instalação é feita baixando o pacote do simplepkg +em http://slack.sarava.org/packages/noarch/ e em seguida instalando-o com o comando + + installpkg simplepkg-VERSAO-noarch-BUILD.tgz + +A partir daí você já pode utilizar o simplaret para baixar pacotes dos repositórios padrão ou +então alterar a lista de repositórios do arquivo /etc/simplepkg/repos.conf ou a configuração +do aplicativo pelo arquivo /etc/simplepkg/simplepkg.conf. + +Usando o simplaret +------------------ + +Em geral, como o simplaret armazena as informações em pastas do sistema, algumas funcionalidades +só estarão disponíveis quando o mesmo é rodado pelo superusuário do sistema. + +Antes de explorar todas as funcionalidades do simplaret, é necessário atualizar a lista de +pacotes para sua arquitetura e versão, o que pode ser feito com o comando + + simplaret --update + +ou simplesmente + + simplaret update + +já que o simplaret suporta que suas opções básicas de linha de comando sejam passas precedidas +por dois hífens ou não (--update ou update). + +Depois de atualizar a lista de pacotes, experimente buscar por um pacote com um comando do tipo + + simplaret search ekiga + +O resultado pode ser algo do tipo + + REPOS repository sarava, arch: i386, version: 11.0: ekiga-2.0.5-i586-1rd.tgz + +Como veremos adiante, "REPOS" significa o tipo de repositório, "sarava" é o nome do +repositório, "arch" mostra a arquitetura do pacote e do repositório (i386, no caso) +e "version" a versão do repositório (11.0, no caso). + +Para instalar esse pacote, basta o comando + + simplaret install ekiga + +Por padrão, se o simplaret encontrar no repositório um arquivo slack-required referente +ao pacote en questão (ou seja, um arquivo ekiga.slack-required na mesma pasta que o pacote +do ekiga, neste caso), então o simplaret tentará instalar todos os requisitos contidos nesse +slack-required, caso já não estejam instalados no sistema. Essa resolução de dependências +automática pode, no entanto, ser desabilitada através de um parâmetro de configuração, como +veremos a seguir. + +Se você apenas quiser baixar o pacote, digite apenas + + simplaret get ekiga + +No caso do simplaret encontrar mais de um pacote com o mesmo nome, ele baixará na ordem que +a opção "search" listá-los, sendo que essa precedência é definida de acordo com a ordem em +que os repositórios estão listados no arquivo de configuração. Por exemplo, o comando + + simplaret search kernel-generic + +pode retornar algo como + + ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.17.13-i486-1.tgz + ROOT repository sarava, arch: i386, version: 11.0: kernel-generic-2.6.18-i486-1.tgz + +Assim, o comando + + simplaret install kernel-generic + +instalará o pacote "kernel-generic-2.6.17.13-i486-1.tgz" ao invés do pacote +"kernel-generic-2.6.18-i486-1.tgz". Caso você queira forçar a instalação do +segundo pacote, basta especificá-lo com o nome completo: + + simplaret install kernel-generic-2.6.18-i486-1.tgz + +Se um pacote já estiver instalado no sistema, a opção install fará o upgrade do mesmo, caso +a versão ou o build number do pacote presente no repositório for diferente da instalada no +sistema. Assim, o comando + + simplaret install simplepkg + +atualiza o simplepkg caso haja uma nova versão disponível nalgum repositório. + +Para remover um pacote, digite + + simplaret remove nome-do-pacote + +o que na verdade é apenas uma chamada indireta ao removepkg. + +O simplaret armazena pacotes baixados de repositórios numa pasta local do sistema, que +por padrão é /var/simplaret. Conforme você vai baixando e instalando pacotes, essa pasta +tende a crescer e ocupar muito espaço. Para apagar os pacotes, basta usar o comando + + simplaret purge + +Isso apagará apenas os pacotes da arquitetura e versão usadas atualmente. Detalhes de +como apagar os pacotes de todas a arquiteturas e versões serão dados numa seção seguinte. + +Você também pode forçar o simplaret a apagar apenas pacotes antigos. O comando a seguir +apaga apenas os pacotes baixados a três semanas ou mais (ou seja, os pacotes baixados a +menos de três semanas continuam armazenados): + + simplaret purge -w 3 + +Baixando patches e atualizando o sistema +---------------------------------------- + +O simplaret possui, além do básico do gerenciamento de pacotes, duas funcionalidades +adicionais: a obtenção e a aplicação de patches (pacotes contendo atualizações e +correções de segurança). + +Assumindo que os repositórios contendo patches para sua distribuição do tipo Slackware +estejam corretamente configurados, o que ocorre com a configuração padrão que acompanha +o simplepkg e que veremos a seguir como alterá-la, você pode baixar os patches disponíveis +para o seu sistema com o comando + + simplaret get-patches + +Se você quiser não só baixar mas também atualizar seu sistema, isto é, fazer um upgrade com +os patches disponíveis, use + + simplaret upgrade + +Trabalhando com múltiplas arquiteturas e versões +------------------------------------------------ + +Até aqui vimos apenas o que é a obrigação de qualquer sistema de gerenciamento de pacotes possuir: +obtenção de pacotes, instalação, busca e atualização do sistema. O que diferencia o simplaret das +outras ferramentas, além do esquema de resolução de dependências, é sua capacidade de lidar +simultaneamente com múltiplas arquiteturas, versões e até instalações de sistemas do tipo Slackware. + +O uso dos seguintes comandos só fará sentido à luz da próxima seção, onde trataremos a respeito de +múltiplas instalações e jaulas num mesmo computador, porém é um pré-requisito para entendê-la. + +Supondo que você esteja rodando Slackware (arquitetura i386) mas que queira atualizar a lista de +pacotes do sistema Slamd64 versão 11.0 (arquitetura x86_64), basta usar o comando + + ARCH=x86_64 VERSION=11.0 simplaret update + +Esse comando baixará a lista de pacotes para o Slamd64 sem conflitar de nenhuma forma com a lista +e os pacotes já baixados para o Slackware. Isso acontece porque o simplaret armazena as informações +e os pacotes de cada repositório em pastas próprias, organizadas de acordo com a arquitetura e versão. + +Passar as variaveis ARCH e VERSION para o simplaret é opcional. Se qualquer uma delas não foi especificada, +o simplaret utilizará o valor padrão do seu sistema, usualmente obtido do arquivo /etc/slackware-version +ou então especificada através do arquivo de configuração do simplepkg. + +Por exemplo, para pesquisar por um pacote da arquitetura powerpc (distribuição Slackintosh) na versão 11.0, +basta o comando + + ARCH=powerpc VERSION=11.0 simplaret search nome-do-pacote + +Todos os comandos apresentados anteriormente funcionarão dessa maneira, à exceção daqueles que instalam ou +fazer a atualização de pacotes, já que em geral é destrutivo misturar pacotes de arquiteturas e versões +diferentes num mesmo sistema. + +Trabalhando com múltiplas instalações +------------------------------------- + +A funcionalidade apresentada na seção anterior só faz sentido quando existirem sistemas, jaulas e/ou +vservers instalados num mesmo computador. + +Suponha que você possua uma máquina x86_64 com três sistemas instalados: + + - Slamd64 11.0 na raíz + - Slackware 11.0 em /mnt/slackware-1 + - Slackware 10.2 em /mnt/slackware-2 + +No caso da instalação de pacotes, da obtenção e aplicação de atualizações, o simplaret suporta a +variável de ambiente ROOT para especificar qual é a pasta na qual o simplaret deve buscar o sistema. + +Para instalar um pacote no Slackware contido em /mnt/slackware-1, basta usar os comandos + + ARCH=i386 VERSION=11.0 simplaret update + ROOT=/mnt/slackware-1 simplaret install nome-do-pacote + +O primeiro comando apenas atualiza a lista de pacotes e o segundo faz com que o simplaret baixe +o pacote da arquitetura e versão do sistema presente em /mnt/slackware-1 bem como efetue sua instalação. + +Para o caso da instalação em /mnt/slackware-2, o uso é análogo: + + ARCH=i386 VERSION=10.2 simplaret update + ROOT=/mnt/slackware-2 simplaret install nome-do-pacote + +Existe ainda uma facilidade para que a obtenção e aplicação de atualizações seja feita de forma única, +através do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na +documentação do simplepkg, para que o simplaret saiba de antemão quais são as instalações de sistema +do tipo Slackware presentes numa máquina, além da instalação principal na raíz do sistema. + +Considerando que a máquina possua as três instalações citadas no início deste tópico, a atualização +automática das mesmas pode ser feita quando o arquivo /etc/simplepkg/jailist contiver as seguintes +linhas (sem espaços no início de cada uma): + + /mnt/slackware-1 + /mnt/slackware-2 + +O sistema principal, contido na raíz do sistema, não precisa estar listado nesse arquivo. Se todas +as suas instalações de sistema do tipo Slackware estiverem constando corretamente no /etc/simplepkg/jailist, +o seguinte comando baixará as atualizações disponíveis para todas elas, incluindo o sistema contido na raíz: + + simplaret get-patches + +Analogamente, o seguinte comando baixará e/ou aplicará todas as atualizações disponíveis em todas as +instalações, incluindo o sistema contido na raíz: + + simplaret upgrade + +Desse modo, o gerenciamento de pacotes numa máquina que contenha mais de uma instalação do tipo Slackware +fica unificada e consequentemente simplificada. + +O arquivo repos.conf +-------------------- + +Agora que o comportamento do simplaret foi delineado, é importante descrever o arquivo de definição de +repositórios, o /etc/simplepkg/repos.conf. Se você não pretende fazer um uso avançado do simplaret, +provavelmente pode deixar de ler esta e a próxima seção, já que para o uso corriqueiro do simplaret +você provavelmente não precisará alterar seu repos.conf, a não ser que queira mudar o espelho de download +dos seus pacotes ou montar um esquema avançado para a escolha e priorização de repositórios. + +O arquivo /etc/simplepkg/repos.conf contém uma definição de repositório por linha e a sintaxe de cada +uma delas é: + + TIPO[-ARQUITETURA][-VERSAO]="nome%URL" + +O conteúdo demarcado por colchetes é opcional dependendo do tipo de repositório, como veremos a seguir. +Os tipos de repositório aceitos pelo simplaret são: + + - PATCHES: definição para repositórios que contenham patches (pacotes de atualização) e cuja lista + de arquivos é FILE_LIST e não FILELIST.TXT; exemplo: + + PATCHES-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/patches/" + + No caso da definição acima, temos um repositório de patches para a arquitetura i386 (distribuição + Slackware), versão 11.0 e o nome dado ao repositório é "sarava". + + Possuir uma definição do tipo PATCHES é opcional para ter acesso às atualizações: a definição + de repositório ROOT, que veremos em seguida, já lida com patches: o tipo de repositório PATCHES + serve apenas se você quiser utilizar algum repositório não-oficial como fonte de patches + prioritária, já que repositório PATCHES são pesquisados pelo simplaret antes de qualquer outro. + + Em resumo, se você não tiver um bom motivo para usar esse tipo de repositório, evite-o. + + - ROOT: são tipos de repositórios cujo conteúdo está dividido por versão. O exemplo tradicional + deste caso é o próprio repositório oficial das distribuições: + + ROOT-i386="tds%http://slackware.mirrors.tds.net/pub/slackware/" + + Repositórios ROOT necessitam apenas de uma definição de arquitetura, um nome e uma URL. No caso + acima, temos a definição de repositório ROOT de nome "tds", ou seja, não há definição de versão, + já que o simplaret considerará que a versão desejada está numa subpasta dessa URL. Ou seja, + definições ROOT implicam que as pastas contendo pacotes de cada versão estejam bem separadas, + ou seja, pastas como http://slackware.mirrors.tds.net/pub/slackware/slackware-10.2/ e + http://slackware.mirrors.tds.net/pub/slackware/slackware-11.0/. + + - REPOS: este tipo de repositório é orientado a arquitetura e versão, como por exemplo + + REPOS-i386-11.0="sarava%http://slack.sarava.org/packages/slackware/slackware-11.0/" + + No caso acima, um repositório de nome "sarava" é definido para a arquitetura i386 e versão + 11.0 com a URL http://slack.sarava.org/packages/slackware/slackware-11.0/. Esse tipo de definição + é recomendado para repositórios não-oficiais. + + - NOARCH: o último tipo de definição é usado para repositórios cujos pacotes são independentes + de arquitetura e versão da distribuição. Como exemplo temos um repositório do Projeto Slack: + + NOARCH="sarava%http://slack.sarava.org/packages/noarch" + +Em qualquer tipo de repositório, a URL pode ser do tipo http://, ftp:// ou file:// (para repositórios +locais). + +Como podem haver mais de uma definição de repositório para cada tipo, versão e/ou arquitetura, +as mesmas são diferenciadas de acordo com o nome. Definições de repositório podem ter nomes idênticos, +desde que se refiram a tipo de repositório e/ou arquitetura e versão diferentes. + +Existe ainda uma prioridade dentre tipos de repositório e ordens de precedência. Numa pesquisa, +repositórios são pesquisados de acordo com a seguinte ordem: + + - PATCHES tem prioridade mais alta: caso um pacote de uma dada arquitetura e versão não seja + encontrado no primeiro repositório PATCHES do repos.conf, o próximo repositório definido na + ordem em que ele aparece no arquivo é pesquisado, e assim por diante. + + - Em seguida, pacotes são procurados nas definições ROOT da arquitetura em questão, na ordem + em que aparecem no repos.conf. + + - Depois, são os pacotes de repositórios REPOS daquela arquitetura e versão são pesquisados, + na ordem em que aparecem no repos.conf. + + - Por fim, repositórios NOARCH são pesquisados, na ordem em que são definidos. + +Em resumo, o simplaret tem uma ordem de precedência e execução de repositórios e para busca e obtenção +de pacotes: pacotes são exibidos de acordo com a ordem e precedência descritas acima. No caso da ontenção +de pacotes, o primeiro repositório que possuí-lo será utilizado, isto é, caso o pacote não for solicitado +explicitamente com seu nome de arquivo completo mas sim apenas com seu nome. + +No caso da obtenção de patches, por padrão apenas repositórios do tipo PATCHES e ROOT são pesquisados, +a não ser que isso seja configurado como contrário. + +Em repositórios do tipo REPOS e ROOT ainda é possível, através de parâmetros de configuração, explicitar +a ordem de pastas que são pesquisadas dentro dos repositórios, algo que veremos a seguir e facilita no +caso do usuário estar interessado em dar prioridade para aplicativos em fase de testes (usualmente +armazenados na pasta testing/) ou pacotes antigos (pasture). + +Parâmetros de configuração do simplepkg.conf +-------------------------------------------- + +Nesta seção os parâmetros do arquivo de configuração /etc/simplepkg/simplepkg.conf relevantes ao +simplaret estão descritos. Para uma lista completa de todos os parâmetros disponíveis, consulte o +simplepkg.conf contido no pacote do simplepkg. Aqui estão descritos apenas os principais, que são: + + - STORAGE: local de armazenameto dos pacotes baixados e das informações de repositório. + O valor padrão é /var/simplaret/packages. + + - PATCHES_DIR: local de armazenamento de pacotes que são patches (atualizações), isto é, o + local de armazenamento de pacotes de repositórios do tipo PATCHES (e eventualmente de + patches encontrados em repositórios do tipo ROOT, como veremos a seguir). O valor padrão + é /var/simplaret/patches. + + - SIMPLARET_DOWNLOAD_FROM_NEXT_REPO: indica se o simplaret deve tentar baixar um pacote do + próximo repositório (caso exista) quando o download do repositório atual tiver falhado. + Valores possíveis são "1" ou "yes" para habilitar a opção (que é o comportamento padrão) + ou "0" ou "no" para desabilitá-la. + + - SIMPLARET_PURGE_PATCHES: indica se o conteúdo da pasta de patches também deve ser apagado + quando o comando "simplaret --purge" é chamado. Use "yes" ou "1" para habilitar e "no" ou + "0" para desabilitar. O valor padrão é "1". + + - SIMPLARET_PURGE_WEEKS: controla o número de semanas a partir do qual o simplaret irá apagar + pacotes quando chamado com o comando "simplaret --purge", o que é equivalente a usar o + comando "simplaret --purge -w N". O valor padrão é "3". Para desabilitar essa opção, atribua + o valor "0". + + - PASSIVE_FTP: Indica se o simplaret deve fazer as transferências de FTP no modo passivo. + O valor padrão é "1" (habilitado). + + - HTTP_TOOL: especifica qual a ferramenta para obtenção de arquivos via protocolo HTTP. + As opções disponíveis são "curl" e "wget", sendo que a opção padrão é "curl". + + - FTP_TOOL: especifica qual a ferramenta para obtenção de arquivos via protocolo FTP. + As opções disponíveis são "curl", "wget" e "ncftpget", sendo que a opção padrão é "curl". + + - CONNECT_TIMEOUT: tempo máximo de espera para uma conexão de rede, dado em segundos. + O valor padrão é "20". + + - ROOT_PRIORITY: especifica a ordem de prioridades das pastas de repositórios do tipo + ROOT numa pesquisa. O valor padrão é "patches slackware extra testing pasture", + indicando que a pasta de patches tem precedência sobre todas as outras no repositório, + sendo seguida pela pasta slackware e depois pelas extra, testing e pasture. Como + podem existir nomes de pacotes idênticos nessas pastas, o estabelecimento de uma + ordem se faz necessária. + + - REPOS_PRIORITY: da mesma forma como repositorios ROOT necessitam de uma prioridade + de pesquisa em pastas, este parâmetro de configuração especifica a prioridade de + pastas em repositórios do tipo REPOS. O valor padrão é + "patches slackware extra testing pasture". + + - SIGNATURE_CHECKING: indica se o simplaret deve checar pela assinatura dos pacotes + baixados, caso ela esteja disponível. Você deve ter a chave pública do distribuidor + dos pacotes no seu chaveiro. O valor padrão é "0" (desabilitado). + + - DEPENDENCY_CHECKING: indica se o simplaret deve trabalhar com a resuloção de dependências + caso ele encontre, no repositório, um arquivo slack-required correspondente ao pacote que + está sendo instalado. O valor padrão é "1" (habilitado). + + - DOWNLOAD_EVEN_APPLIED_PATCHES: indica de o simplaret deve baixar todos os patches + disponíveis a uma dada instalação de sistema do tipo Slackware, mesmo que os mesmo + já se encontrem aplicados. Esta opção é útil se você quiser manter uma cópia local + das atualizações existentes para seu sistema. O valor padrão é "0" (desabilitado). + + - CONSIDER_ALL_PACKAGES_AS_PATCHES: especifica se o simplaret deve, durante a obtenção + de pacotes de atualização, procurar por atualizações também nos tipos de repositórios + REPOS e NOARCH. Com essa opção, o simplaret faz uma pesquisa pelo pacote e, se sua versão + ou buildnumber da primeira ocorrência não bater com as do pacote atualmente instalado, + ele baixa e o aplica, mesmo que seja um pacote de repositórios do tipo REPOS ou NOARCH. + O valor padrão é "0" (desabilitado). O uso dessa opção não é muito recomendado por poder + causar confusão e deixar o simplaret mais lento, mas pode ser útil caso você esteja + usando um repositório não-oficial que sempre atualiza seus pacotes. + + - STORE_ROOT_PATCHES_ON_PATCHES_DIR: controla se o simplaret deve armazenar os patches baixados + de repositórios do tipo ROOT na mesma pasta de armazenamento de patches provenientes de + repositórios do tipo PATCHES. É uma opção útil apenas se você quiser manter todos os patches + de repositórios ROOT e PATCHES num mesmo local. O valor padrão é "0" (desabilitado). + +Vale lembrar que todas as opções booleanas (isto é, que podem ser apenas habilitadas ou desabilitadas) +do simplepkg.conf tem os seguintes valores permitidos: "1" e "yes" para habilitado e "0" ou "no" para +desabilitado. + +Mas para quê serve isso? +------------------------ + +Você pode estar se perguntando: para que mais um gerenciador de pacotes para o Slackware e quem utilizaria +uma ferramenta que baixa pacotes de várias arquiteturas? + +O simplaret foi escrito tendo em mente um ambiente *86 onde várias jaulas de diferentes arquiteturas estão +instaladas. Suponha por exemplo uma máquina x86_64 que possua as seguintes jaulas: + + - Slamd64 11.0 + - Slackware 11.0 + - Slackware 11.0 com pacotes adicionais em i686 + - ucSlack (uClibc para i386) + +O condenado/a em questão que roda todas essas jaulas, pelos mais diversos motivos, pode ter uma grande dor +de cabeça para manter os pacotes em ordem de forma manual. Com o simplaret e eventualmente com o simplepkg, +a tarefa se torna trivial. + +Além disso, as inúmeras novas tecnologias de virtualização poderão necessitar de um sistema de gerenciamento +de pacotes que trabalha simultaneamente com múltiplas arquiteturas e versões. + +Mesmo que você possua apenas um único sistema do tipo Slackware em seu computador ou trabalhe apenas com uma +única arquitetura e/ou versão, o simplaret possui todas as funcionalidades necessárias para facilitar seu +dia-a-dia de gerenciamento de pacotes. + +Mais informações +---------------- + +O simplaret foi escrito por Silvio Rhatto (rhatto at riseup.net) e é disponibilizado dentro do pacote do +simplepkg e sob a licença GPL. Para obter o código fonte, digite + + svn checkout svn://slack.sarava.org/simplepkg + +O wiki de desenvolvimento: http://slack.sarava.org/wiki/Main/SimplePKG e o endereço da lista de discussão +utilizada para discussões sobre simplaret, simplepkg ou mesmo distribuições e pacotes do tipo Slackware é +http://listas.sarava.org/wws/info/slack. + |