

Repositrio de APT HOWTO


** Ingredientes

- 1 mquina com acesso rpido  rede e bastante largura de banda
- 1 servidor de ftp (annimo) ou http rodando

** Modo de Preparo

1) V ao diretrio raiz do servidor de ftp/http
2) Crie a seguinte estrutura de diretrios nele:

<versao>/SRPMS/
<versao>/conectiva/RPMS.<comp1>/
<versao>/conectiva/RPMS.<comp2>/
            ...
<versao>/conectiva/RPMS.<compn>/
<versao>/conectiva/base/

Voc pode substituir <versao> pela verso da distribuio
que ser disponibilizada ou se voc estiver disponibilizando
algum outro software, a verso da distribuio a que se destinam
os pacotes.

<comp1>...<compn> so os diretrios dos componentes da distribuio
e podem ser qualquer string. 

No diretrio SRPMS devem estar contidos os srpms dos pacotes
do repositrio.

3) Crie os arquivos de ndice do apt (os pkglists) no diretrio base.
Para isso, v ao diretrio base e execute o seguinte comando para
cada componente:

genpkglist <path>/<versao> <comp>

Onde:

<path>/<versao>  o caminho completo at o topo do diretrio onde
est o repositrio

<comp>  o nome do componente. 

Repita a operao para cada um dos componentes que voc criou.

4) Comprima os arquivos de ndice com gzip.

5) Distribua a linha do sources.list para o seu repositrio. Ela
tem o seguinte formato:

rpm URL/<path> <versao>/conectiva <comp1> <comp2> ... <compn>
 ^      ^              ^              ^      ^      ^     ^ 
 |      |              |              +------+------+-----+- Nomes dos 
 |      |              |                                     componentes
 | 	|	       |
 |      |              versao da distribuio e nome da distribuio
 |      |
 |      URL para o diretrio raiz do repositrio
 |
 Tipo de distribuio. No caso, rpm

** Exemplos:

## Quer se fazer um repositrio de pacotes para o Conectiva 6.0, na mquina
repo.conectiva.com.br, usando http:

cd /home/httpd
mkdir -p coisas/6.0
cd coisas/6.0
mkdir SRPMS
mkdir -p conectiva/RPMS.bla
mkdir -p conectiva/base
cp /meus/pacotes/*src.rpm SRPMS
cp /meus/pacotes/*i386.rpm conectiva/RPMS.bla
cd conectiva/base
genpkglist /home/httpd/coisas/6.0/conectiva bla
gzip pkglist.bla

Em sources.list deve se adicionar:

rpm http://repo.conectiva.com.br/coisas 6.0/conectiva bla


## Quer se fazer um repositrio de pacotes para a distribuio RedRat 20.0,
em bla.redrat.com, usando ftp:

cd /home/ftp/pub
mkdir -p stuff/20.0
cd stuff/20.0
mkdir SRPMS
mkdir -p redrat/RPMS.1
mkdir -p redrat/RPMS.2
mkdir -p redrat/base
cp /tmp/pacotes*src.rpm SRPMS
cp <bla bla bla> redrat/RPMS.1
cp <bla bla bla> redrat/RPMS.2
cd redrat/base
genpkglist /home/ftp/stuff/20.0/redrat 1
genpkglist /home/ftp/stuff/20.0/redrat 2
gzip pkglist.1
gzip pkglist.2

Em sources.list deve se adicionar:

rpm ftp://bla.redrat.com/pub/stuff 20.0/redrat 1 2









