Crear mini-repo para ArchLinux (utilizando los paquetes de la cache y otros)

En Archlinux no contamos con la herramienta dpkg-scanpackages o AptonCD que nos permite crear un mini-repo personalizado, pero si podemos contar con repo-add que viene siendo su sustituto.

1-Elegiremos un directorio para nuestro mini-repo

[root@huracan ~]# mkdir /home/nelson/mini-repo

2-Copiaremos los paquetes que tengamos en nuestra cache (inclusive puede incluir otros que halla descargado mediante otra via)

[root@huracan ~]# cp /var/cache/pacman/pkg/*.* /home/nelson/mini-repo/

3-Ya estamos listo para generar el mini-repo

[root@huracan ~]# repo-add /home/nelson/mini-repo/minirepo.db.tar.gz /home/nelson/mini-repo/*

En dependencia de la cantidad de paquetes, sera el tiempo en demorarse. El final deberia de tener un parecido a esto:

==> Agregando el paquete /home/nelson/mini-repo/zlib-1.2.5-3-i686.pkg.tar.xz
  -> Creando entradas en la bd de 'desc'
  -> Calculando sumas de comprobación md5...
  -> Creando entradas en la bd de 'depends'
==> Agregando el paquete /home/nelson/mini-repo/zvbi-0.2.33-3-i686.pkg.tar.xz
  -> Creando entradas en la bd de 'desc'
  -> Calculando sumas de comprobación md5...
  -> Creando entradas en la bd de 'depends'
==> Creado un archivo de base de datos actualizada '/home/nelson/mini-repo/minirepo.db.tar.gz'
[root@huracan ~]# 

Podemos ver como al final se genero el archivo minirepo.db.tar.gz y tambien el archivo minirepo.db

[root@huracan ~]# ls /home/nelson/mini-repo/ | grep minirepo
minirepo.db
minirepo.db.tar.gz

Ya con esto tenemos listo el mini repo, solo quedaria agregarlo a nuestro “sources.list” , que en Archlinux es mirrorlist, pero para este caso es en pacman.conf Con nuestro editor de texto abrimos:

nano /etc/pacman.conf

y al final de el archivo agregamos:

[...]
[minirepo]
Server = file:///home/nelson/minirepo/

Importante!, tener en cuenta que [minirepo] es el nombre de nuestro repo, el nombre que le dimos anteriormente cuando lo generamos.

Seguidamente actualizamos nuestra base de datos local con el nuevo repositorio.

[root@huracan ~]# pacman -Sy
:: Sincronizando las bases de datos de paquetes...
 minirepo                                                           155,7K   24,9M/s 00:00:00 [#######################################################] 100%

Mas Informacion:

man repo-add

man repo-remove