Libremakepkg (Galego) - ParabolaWiki

# Libremakepkg (Galego)

Libremakepkg é un script que:

1. Comprobe dependencias non libres no PKGBUILD
2. Monte ${SRCDEST} ${PKGDEST} ${SRCPKGDEST} ${WORKDIR}, e opcionalmente copie etc/makepkg.conf etc/pacman.conf etc/mtab para o chroot (Este paso é chamado buildenv no script)
3. Actualiza o chroot onde estás construindo (opción -u)
4. Limpe o chroot de forma que ningún paquete sexa configurado automaticamente como unha dependencia (opção-c) e
5. Finalmente utilice makechrootpkg para construir o paquete.

O paquete será colocado en ${PKGDEST}.

Note: ${SRCDEST} ${PKGDEST} ${SRCPKGDEST} ${WORKDIR} son configurados no /etc/makepkg.conf

## Utilización

Note: Antes de utilizar libremakepkg terá que configurar o /etc/libretools.conf primero. Siga as instrucións no Guia do Mantedor do paquete de Parabola GNU/Linux
Warning: libremakepkg non funcionará se non tes instalado o devtools

     # pacman -Sy devtools

### ¿Cales son as opcións do libremakepkg?

Libremakepkg terá sempre unha lista actualizada de opcións que poden ser listados usando:

    $ libremakepkg -h

### Construindo con libremakepkg

Para construir con libremakepkg deberás cambiar o directório onde está PKGBUILD tes que executar

     $ cd /dir/with/PKGBUILD
     # libremakepkg [options]

Se ningunha opción foi pasado para o libremakepkg, buildenv construirá o paquete sen actualización ou limpeza. Isto é útil se unha complicación anterior fallou e ti alteraches o PKGBUILD para que funcione esta vez.

## ¿Porque Buildenv?

buildenv está destinado a fullpkg, capaz de engador paquetes a un repositorio local e instalalos tamén.

## ¿Como se bota a limpeza?

makechrootpkg ten unha opción de limpeza con rsync de chroot "raiz" a chroot "copia", e usa o chroot "copia" para a construción dos paquetes. Cando estábamos "Portando paquetes para MIPS" nós creamos un script que controlaba as dependencias e construiam os paquetes (fullpkg). Descubrimos que a limpeza por rsync era lenta e ineficiente. Entón proxectamos un novo método de limpieza nun sistema limpio, que usa pacman e unha lista de paquetes.

O método de limpeza no libremakepkg:

1. copia a lista de paquetes para o chroot (/etc/libretools.d/cleansystem
2. utilice comm para comparar paquetes instalados no sistema e no "cleansystem"
3. elimine todos os paquetes que non están no "cleansystem".

## Estou tendo problemas con libremakepkg

Relate o problema para o bug tracker. Utilice [libretools] no inicio do título para o problema que estea tendo.

Categories:

- Hacking
- Packaging
- Libretools