From bbc8df235f99cf03845bdc88058cd76b279f11e1 Mon Sep 17 00:00:00 2001 From: rhatto Date: Thu, 24 May 2007 23:49:13 +0000 Subject: docs: small fixes git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@384 04377dda-e619-0410-9926-eae83683ac58 --- trunk/doc/README | 6 +- trunk/doc/simplepkg.html | 201 ----------------------------------------------- trunk/doc/simplepkg.tex | 14 ++-- 3 files changed, 10 insertions(+), 211 deletions(-) delete mode 100644 trunk/doc/simplepkg.html (limited to 'trunk/doc') diff --git a/trunk/doc/README b/trunk/doc/README index ae4c423..47143ca 100644 --- a/trunk/doc/README +++ b/trunk/doc/README @@ -55,7 +55,7 @@ by the following commands: - jail-update: jail-commit counterpart - rebuildpkg: rebuild a package based on its /var/log/packages entry - simplaret: package retrieval tool - - createpkg: donwload, compile and package creationg script based on http://slack.sarava.org/slackbuilds + - createpkg: donwload, compile and package creationg script - repos: creates and manages binary repositories - mkbuild: app to build slackware build scripts @@ -391,8 +391,8 @@ rebuilds the coreutils package using the files, scripts and metainformations sto For their time, scripts repos and mkbuild are used, respectivelly, to create and manage binary repositories and to create SlackBuild scripts. -Parâmetros de configuração --------------------------- +Configuration parameters +------------------------ Simplepkg's config file is /etc/simplepkg/simplepkg.conf and it keeps parameters used by all scripts. In this section, we won't cover any parameter that's just used by simplaret, whose settings are covered diff --git a/trunk/doc/simplepkg.html b/trunk/doc/simplepkg.html deleted file mode 100644 index 85b2b06..0000000 --- a/trunk/doc/simplepkg.html +++ /dev/null @@ -1,201 +0,0 @@ -O simplepkg é um sistema de gerenciamento de pacotes que roda sobre o pkgtool e o swaret. 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. - -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 do swaret configurado para os repositórios de pacote que possuem seus aplicativos. - -Gerenciar instalações e metapacotes não é tudo o que o simplepkg faz. Ele pode ser usado até na criação de vservers. O simplepkg inclusive é um amadurecimento de idéias delineadas nos seguintes artigos: - -- Rodando o OpenOffice.org em chroot no Slamd64 -- Linux Vservers e segurança por contexto -- Instalando o Slackware sem programa de instalação - -O simplepkg permite que o trampo proposto nos artigos acima seja simplificado a uma meia dúzia de comandos, desde que existam templates prontos. - -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 - -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.midiatatica.org/packages/noarch/. Depois de instalá-lo, não esqueça de configurar seu swaret: - -
-installpkg swaret-VERSAO-noarch-BUILD.tgz simplepkg-VERSAO-noarch-BUILD.tgz
-
- -
  -Alternativamente, se você já está com o swaret instalado, adicione em seu swaret.conf a linha - -
-REPOS_ROOT=SlackMidiataticaNoarch%http://slack.midiatatica.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
-SWARET_PACKS="/var/swaret" # local onde o swaret armazena seus pacotes
-SWARET_CLEAN="1" # apaga o cache de pacotes antes da instalação da jaula
-SWARET_DELETE_DOWN="1" # apaga o cache de pacotes após a instalação
-SWARET_UPDATE="0" # executa um swaret --update antes de iniciar a instalação da jaula
-SWARET_PURGE_WEEKS="N" # apaga os pacotes do cache mais velhos que N semanas antes de instalar
-PATCHES_DIR="/var/swaret/patches" # local os patches são armazenados
-
- -
 
 
 
 
 
 
 
 
  -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. - -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
-
- -
  -O jail-update considera que o template main, caso exista, se refere à instalação principal da sua máquina, isto é, o sistema de você roda. Dessa forma a invocação do jail-update atualiza todos os templates cujas jaulas estão em JAIL_ROOT e ainda atualiza o template da instalação principal. - -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
-
- -
  -Aplicativo auxiliar: rebuildpkg - -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. - -Fonte - -Se você quiser obter diretamente o código-fonte do simplepkg, baixe-o do repositório: - -
-svn checkout svn://slack.midiatatica.org:40/simplepkg
-
- -
  -Página de desenvolvimento - -A página de desenvolvimento do simplepkg fica aqui. diff --git a/trunk/doc/simplepkg.tex b/trunk/doc/simplepkg.tex index 216d0d6..610ed08 100644 --- a/trunk/doc/simplepkg.tex +++ b/trunk/doc/simplepkg.tex @@ -66,7 +66,7 @@ As tr \item Criação de pacotes \end{itemize} -O gerencamento de pacotes é feito através do simplaret, e por ser algo bem específico está detalhado no artigo correspondente. As seções a seguir mostrarão como o \emph{simplepkg} pode ser utilizado para criar e manter jaulas, assim como também criar pacotes. +O gerencamento de pacotes é feito através do \link{http://slack.sarava.org/simplaret}{simplaret}, e por ser algo bem específico está detalhado no artigo correspondente. As seções a seguir mostrarão como o \emph{simplepkg} pode ser utilizado para criar e manter jaulas, assim como também criar pacotes. \section{Criando templates de instalação} @@ -119,7 +119,7 @@ Uma vez que um template foi criado com uma lista de pacotes e opcionalmente com mkjail jaula meu-slackware \end{verbatim} -Isso cria uma nova árvore do slackware em /vservers/jaula contendo todos os pacotes e arquivos de configuração do template "meu-slackware". A instalação dos pacotes será feita pelo aplicativo simplaret, que deve estar configurado corretamente e cuja configuração padrão deve funcionar para a maioria dos casos. +Isso cria uma nova árvore do slackware em /vservers/jaula contendo todos os pacotes e arquivos de configuração do template "meu-slackware". A instalação dos pacotes será feita pelo aplicativo \link{http://slack.sarava.org/simplaret}{simplaret}, que deve estar configurado corretamente e cuja configuração padrão deve funcionar para a maioria dos casos. Se você quiser instalar essa jaula em outro local que não seja a pasta /vservers (esse local padrão pode ser mudado pelo arquivo de configuração do \emph{simplepkg}), basta usar um comando do tipo @@ -193,7 +193,7 @@ O comando jail-commit possibilita que um template sempre esteja atualizado e ref templatepkg -u meu-template \end{verbatim} -Para facilitar ainda mais o controle das alterações do sistema, existe ainda uma facilidade do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na documentação do simplaret, para que o jail-commit 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. +Para facilitar ainda mais o controle das alterações do sistema, existe ainda uma facilidade do arquivo /etc/simplepkg/jailist. Esse arquivo serve, além de outros propósitos descritos na \link{http://slack.sarava.org/simplaret}{documentação do simplaret}, para que o jail-commit 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. Suponha que uma máquina possua duas instalações de slackware, além da principal (raíz): @@ -265,11 +265,11 @@ onde file:///var/svn/simplepkg \section{Atualização de jaulas} -A atualização de jaulas e sistemas instalados é feita através do simplaret e também utiliza o arquivo /etc/simplepkg/jailist. Para mais informações a respeito, consulte a documentação do simplaret para mais detalhes. +A atualização de jaulas e sistemas instalados é feita através do \link{http://slack.sarava.org/simplaret}{simplaret} e também utiliza o arquivo /etc/simplepkg/jailist. Para mais informações a respeito, consulte a \link{http://slack.sarava.org/simplaret}{documentação do simplaret} para mais detalhes. \section{Arquiteturas e versões diferentes} -O \emph{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. +O \emph{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 \link{http://slack.sarava.org/simplaret}{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 @@ -337,7 +337,7 @@ O pacote resultante estar createpkg --install latex2html \end{verbatim} -Se o pacote possuir dependências listadas num arquivo slack-required e que não estiverem instaladas no sistema, o createpkg tentará processá-las uma a uma antes de tentar construir o pacote desejado: se as dependências não forem encontradas no repositório de scripts, então o createpkg tentará baixá-las de um repositório binário através do simplaret. Se você não quiser que a resolução de dependências seja seguida, use a opção --no-deps. +Se o pacote possuir dependências listadas num arquivo slack-required e que não estiverem instaladas no sistema, o createpkg tentará processá-las uma a uma antes de tentar construir o pacote desejado: se as dependências não forem encontradas no repositório de scripts, então o createpkg tentará baixá-las de um repositório binário através do \link{http://slack.sarava.org/simplaret}{simplaret}. Se você não quiser que a resolução de dependências seja seguida, use a opção --no-deps. Para mais detalhes de funcionamento, experimente o comando @@ -370,7 +370,7 @@ Por fim, os scripts repos e mkbuild s \section{Parâmetros de configuração} -O arquivo de configuração do \emph{simplepkg} é o /etc/simplepkg/simplepkg.conf. Ele contém parâmetros de configuração de todos os scripts, porém neste texto não trataremos das opções específicas ao simplaret, as quais tem uma seção específica no artigo correspondente. +O arquivo de configuração do \emph{simplepkg} é o /etc/simplepkg/simplepkg.conf. Ele contém parâmetros de configuração de todos os scripts, porém neste texto não trataremos das opções específicas ao \link{http://slack.sarava.org/simplaret}{simplaret}, as quais tem uma seção específica no artigo correspondente. \begin{itemize} \item \emph{JAIL\_ROOT}: pasta padrão onde as jaulas são criadas pelo mkjail. Valor padrão: "/vservers". -- cgit v1.2.3