aboutsummaryrefslogtreecommitdiff
path: root/doc/README.pt_BR
diff options
context:
space:
mode:
Diffstat (limited to 'doc/README.pt_BR')
-rw-r--r--doc/README.pt_BR254
1 files changed, 254 insertions, 0 deletions
diff --git a/doc/README.pt_BR b/doc/README.pt_BR
new file mode 100644
index 0000000..4e814de
--- /dev/null
+++ b/doc/README.pt_BR
@@ -0,0 +1,254 @@
+Simplepkg: gerenciamento de instalações e metapacotes
+-----------------------------------------------------
+
+Autor: Silvio Rhatto <rhatto at riseup.net>
+Licença: GPL
+
+O simplepkg é um sistema de gerenciamento de pacotes que roda sobre o pkgtool.
+Ele trabalha com templates -- listas com pacotes instalados, scripts e arquivos de configuração
+-- permitindo criar perfis de instalação que podem ser então usados para instalar o sistema numa
+outra partição, criar um chroot específico ou até trabalhar com o conceito de metapacotes: uma
+lista de pacotes que pode ser instalada e removida com apenas um comando.
+
+Documentação
+------------
+
+A documentação mais atualizada do simplepkg está em http://slack.sarava.org/node/12
+
+Descrição
+---------
+
+Todas as distribuições de GNU/Linux já tem algum sistema de empacotamento amadurecido. A questão
+agora é a praticidade de instalar e controlar o que está instalado, tanto pacotes como arquivos
+de configuração de uma máquina.
+
+Imagine por exemplo se você precisa manter uma lista de pacotes de 200 máquinas slackware, sendo
+que algumas são usadas como desktop, outras como servidores web, alguma sendo o servidor de email
+e assim por diante. Imagine agora que você perca o disco de algumas dessas máquinas ou que precise
+cotidianamente reinstalar ou atualizar um sistema.
+
+Usar o cd de instalação do slackware e configurar na mão toda a vez que der um pau faria com que
+você ficasse louco/a e desperdiçasse muito tempo, além do que sempre ocorre de esquecermos algum
+detalhe ou pacote durante a configuração do sistema. Manter um backup completo de cada máquina,
+por outro lado, pode ser muito custoso se o número delas for muito grande.
+
+O simplepkg permite que você mantenha um template para cada grupo de máquinas e com apenas um
+comando instalar o template numa partição. Além do template, você precisa configurar o simplepkg
+para obter pacotes de um repositório local ou remoto.
+
+Gerenciar instalações e metapacotes não é tudo o que o simplepkg faz. Ele pode ser usado até na
+criação de vservers.
+
+Arquitetura
+-----------
+
+O simplepkg é um conjunto de scripts escritos com a filosofia KISS em mente. Ele é um sistema muito
+simples, composto pelos seguintes comandos:
+
+ - mkjail: constrói uma jaula/instalação de slackware numa pasta
+ - metapkg: instala ou remove um metapacote
+ - templatepkg: criar ou adiciona pacotes a um template
+ - lspkg: lista pacotes instalados
+ - jail-upgrade: faz o upgrade nas jaulas
+ - rebuildpkg: reconstrói um pacote a partir de sua entrada no /var/log/packages
+ - simplaret: obtém pacotes de repositórios locais ou remotos
+ - createpkg: baixa, compila e empacota software de acordo com http://slack.sarava.org/slackbuilds
+
+A pasta de configuração e armazenamento de templates é a /etc/simplepkg. Templates são arquivos contendo
+uma lista de pacotes, um pacote por linha e com a extensão .template. Como exemplo, um template poderia se
+chamar minimo.template e conter a seguinte lista:
+
+ aaa_base
+ aaa_elflibs
+ apache
+ bash
+ bin
+ coreutils
+ findutils
+
+Se você quiser também é possível usar um tagfile do slackware como template, sem nem precisar editá-lo.
+
+Instalando o simplepkg
+----------------------
+
+Para baixar o pacote do simplepkg, vá em http://slack.sarava.org/packages/noarch/.
+
+ installpkg simplepkg-VERSAO-noarch-BUILD.tgz
+
+Alternativamente, se você está com o swaret instalado, adicione em seu swaret.conf a linha
+
+ REPOS_ROOT=SlackMidiataticaNoarch%http://slack.sarava.org/packages/noarch
+
+e então digite
+
+ swaret --update
+ swaret --install simplepkg
+
+Configurando o simplepkg
+------------------------
+
+Como exemplo, vamos criar uma jaula baseada nos pacotes instalados no seu slackware. Edite o
+arquivo /etc/simplepkg/simplepkg.conf:
+
+ # /etc/simplepkg/simplepkg.conf
+ JAIL_ROOT="/vservers" # local onde as jaulas serão criadas
+ SIMPLARET="simplaret" # programa que baixa os pacotes (pode ser o swaret se voce o tiver)
+ STORAGE="/var/simplaret" # local onde o simplepkg armazena seus pacotes
+ SIMPLARET_CLEAN="1" # apaga o cache de pacotes antes da instalação da jaula
+ SIMPLARET_DELETE_DOWN="1" # apaga o cache de pacotes após a instalação
+ SIMPLARET_UPDATE="0" # atualiza as listas de pacotes antes de iniciar a instalação da jaula
+ SIMPLARET_PURGE_WEEKS="N" # apaga os pacotes do cache mais velhos que N semanas antes de instalar
+ PATCHES_DIR="/var/simplaret/patches" # local os patches são armazenados
+ DEFAULT_ARCH="i386"
+ DEFAULT=VERSION="10.2"
+ STORAGE="/storage/packages" # where simplepkg store packages
+ PASSIVE_FTP="1"
+
+Para definir quais repositórios de pacotes você usará, edite o arquivo /etc/simplepkg/repos.conf,
+colocando algo como
+
+ ROOT-i386="http://slack.sarava.org/packages/slackware"
+ REPOS-i386="slack-sarava%http://slack.sarava.org/packages/slackware/slackware-10.2/"
+ ROOT-x86_64-10.2="http://darkstar.ist.utl.pt/pub/slamd64/"
+ REPOS-x86_64-10.2="slamd-sarava%http://slack.sarava.org/packages/slamd64/slamd64-10.2/"
+
+Para informações detalhadas sobre o simplaret, consulte seu artigo específico em http://slack.sarava.org/node/16
+
+Se você quer utilizar o swaret em lugar do simplaret, o swaret.conf deve estar bem configurado para que ele
+seja capaz de baixar e instalar todos os pacotes dos templates. Parâmetros como EXCLUDE podem ser um empecilho,
+e se você os remover da sua instalação tenha muito cuidado ao atualizar o seu sistema via swaret --upgrade.
+A desvantagem de usar o swaret é que você não terá como administrar jaulas e instalações de múltiplas arquiteturas.
+
+Criando jaulas e replicando instalações
+---------------------------------------
+
+ templatepkg meu-slackware
+ mkjail jaula meu-slackware
+
+Isso cria o template meu-slackware a partir da sua lista de pacotes em /var/log/packages e cria uma nova árvore
+com esses pacotes na pasta /vservers/jaula (dependendo de qual o valor da variável JAIL_ROOT do simplepkg.conf, é claro).
+
+Se você quiser que alguns arquivos de configuração e executar scripts após a instalação dessa jaula, basta colocarmos na
+pasta /etc/simplepkg/meu-slackware.d/ os arquivos de configuração (dentro da hierarquia de pastas do sistema, isto é,
+/etc/simplepkg/meu-slackware.d/etc/apache/httpd.conf) e os script em /etc/simplepkg/meu-slackware.s/. O template vserver,
+que já vem no mkjail contém um exemplo de script.
+
+Você pode especificar também destinos alternativos para sua jaula, através de um comando do tipo
+
+ ROOT=/mnt mkjail hda2 meu-slackware
+
+O comando acima faz exatamente o que você está pensando: replica sua instalação slackware em /mnt/hda2, dispensando
+totalmente o programa de instalação do slackware!
+
+Caso nenhum template for especificado, o mkjail utiliza o template /etc/simplepkg/default.template.
+
+Se você manter uma jaula em JAIL_ROOT com o mesmo nome que um template, é possível ainda usar o script jail-update
+para copiar todas as alterações de arquivos da jaula na pasta de arquivos do seu template (/etc/simplepkg/nome-da-jaula.d).
+Assim, basta que você copie todos os arquivos de configuração que você editou para essa pasta e deixar o jail-update numa
+crontab para que você tenha sempre um template atualizado e baseado nas jaulas / instalações que você tem rodando e que
+estiverem listadas no arquivo /etc/simplepkg/jailist:
+
+ jail-update
+
+Para adicionar ou remover pacotes de um template, basta editar o arquivo de template. Uma outra forma de adicionar
+arquivos é usando o templatepkg com a opção -a, que adiciona apenas novos pacotes ao template. Se você quiser que o
+templatepkg crie um template a partir de uma jaula, simplesmente use
+
+ templatepkg jaula /vservers/jaula
+
+Metapacotes
+-----------
+
+Outro uso dos templates é a criação de pacotes: imagine por exemplo a dificuldade de um usuário/a novo de slackware
+para instalar o cinelerra e todas as suas dependências. Criando um template contendo o nome de todos os pacotes
+necessários para rodar esse software permite que um usuário instale-o simplesmente com o comando
+
+ metapkg --install cinelerra
+
+O comando sugere uma semelhança com o uso direto do swaret ou do slapt-get, com a única diferença residindo no
+modo como cada um desses programas lida com as dependências de um pacote. Os slapt-get suporta o arquivo
+slack-required, que pode ou não estar presente no pacote. Já o swaret possui uma ferramenta própria para a
+criação de uma lista de dependências.
+
+O simplepkg não pretende substituir esses dois modos de checagem e sim propor uma alternativa de distribuição
+de pacotes em que as dependências são resolvidas sem precisar de um repositório de dependências ou uma modificação
+no próprio pacote, que é o caso do slack-required, um arquivo que na maioria das vezes não está presente.
+
+A remoção de um aplicativo e todas as suas dependências podem ser feitas simplesmente com o comando
+
+ metapkg --remove cinelerra
+
+Upgrade de jaulas
+-----------------
+
+O upgrade de jaulas que estejam em JAIL_ROOT pode ser efetuado com o comando jail-upgrade. Simplesmente coloque
+os patches em PATCHES_DIR e dê o comando
+
+ jail-upgrade
+
+Se você quiser atualizar apenas uma das jaulas que estão em JAIL_ROOT, use
+
+ jail-upgrade nome-da-jaula
+
+Para especificar uma pasta contendo patches diferente de PATCHES_DIR (útil quando você possui jaulas com
+diferentes versões do slackware), simplesmente use
+
+ PATCHES=/local/dos/patches jail-upgrade nome-da-jaula
+
+De modo análogo ao mkjail, é possível indicar ao jail-upgrade uma outra pasta onde a jaula está armazenada:
+
+ ROOT=/otherroot jail-upgrade
+
+Arquiteturas e versões diferentes
+---------------------------------
+
+O simplepkg foi idealizado para permitir que um mesmo template possa ser usado para criar jaulas de
+arquiteturas e versões diferentes de sistemas padrão slackware. A atualização desses sistemas também
+é unificada. Essa possibilidade só é permitida se você usa o simplaret e não o swaret como ferramenta
+de obtenção de pacotes.
+
+Por exemplo, para criar uma instalação de slackware 10.1 (assumindo que suas definições de repositórios
+do /etc/simplepkg/repos.conf contenham locais com slack 10.1), basta usar o comando
+
+ VERSION=10.1 mkjail minha-jaula template-servidor
+
+Arquiteturas diferentes também podem ser usadas. Se você está num sistema x86_64 e quer instalar um
+slack 10.2 numa partição, experimente
+
+ ARCH=i386 VERSION=10.2 ROOT=/mnt mkjail hda2 meu-slackware
+
+Note que os templates independem de arquitetura e versão, já que eles só contém nomes de pacotes,
+arquivos de configuração e scripts. Por isso, o templatepkg, o metapkg, o lspkg e o jail-update
+funcionam normalmente.
+
+Para atualizar suas jaulas, o jail-upgrade checa antes qual a versão e arquitetura de cada uma
+de suas jaulas através do /etc/slackware-version correspondente e a partir disso aplica os patches
+da arquitetura e versão da mesma, usando para isso o simplaret (veja a documentação própria).
+
+Desse modo, mesmo que você tenha jaulas de versões e arquiteturas diversas, usar o comando "jail-upgrade"
+faz a atualização sem problemas, desde que seus patches estejam organizados por arquitetura e versão,
+conforme é detalhado na documentação do simplaret, em http://slack.sarava.org/node/16.
+
+Aplicativos auxiliares: rebuildpkg e createpkg
+----------------------------------------------
+
+O simplepkg acompanha ainda um aplicativo auxiliar que ajuda a recuperar pacotes instalados cujo tgz original
+foi perdido. O comando rebuildpkg reconstrói um pacote a partir de uma entrada no /var/log/packages. O comando
+
+ rebuildpkg coreutils
+
+reconstrói um pacote do coreutils usando os arquivos e as metainformações listadas no arquivo
+do /var/log/packages/ correspondente ao coreutils.
+
+Se você quiser construir seus próprios pacotes baseados nos slackbuilds disponíveis em
+http://slack.sarava.org/slackbuilds, basta utilizar o createpkg:
+
+ createpkg nome-do-pacote
+
+Fonte
+-----
+
+Se você quiser obter diretamente o código-fonte do simplepkg, baixe-o do repositório:
+
+ svn checkout svn://slack.sarava.org/simplepkg
+