Fullpkg (Português)

From ParabolaWiki
Jump to: navigation, search

Fullpkg é um script para construir pacotes de uma árvore abs do zero. Este script:

  1. Checa se o pacote alvo foi construido.
  2. Encontra dependências para o pacote alvo e verifica se estão na versão mais recente.
  3. Escreve uma lista de pacotes para construir e qual o nível de suas dependências (ex. A depende de B, B depende de C -> A é o nivel 0, B é o nivel 1, C é o nivel 2)
  4. Copia o PKGBUILD e seus arquivos para o diretório de construção.
  5. Constrói os pacotes em nivel de dependência inversa.

1 Configuração

fullpkg usa algumas variáveis a partir de /etc/libretools.conf, você precisa configurar estas:

File: /etc/libretools.conf
REPOS=(core extra ...)
ABSROOT=$WORKDIR/abslibre
FULLBUILDCMD="sudo libremakepkg -cumL -M --noconfirm -M --nocheck"

1.1 Ganchos de arquitetura específicas

Há também arquivos específicos do arch que você terá de instalar separadamente,
 # pacman -Sy libretools-mips64el
Este contém ganchos específicos para esta arquitetura:
File: /etc/libretools.d/mips64el.conf
HOOKLOCALRELEASE=mipsrelease
HOOKPKGBUILDMOD=mips-add

Para usar ganchos específicos do arch você precisa descomentar o campo direito em /etc/libretools.conf:

File: /etc/libretools.conf
## These are architecture specific files.
## Uncomment them if you installed libretools-arch
#source /etc/libretools.d/mips64el.conf
#source /etc/libretools.d/x86_64.conf
#source /etc/libretools.d/i686.conf

Se você usar o fullpkg em um sistema i686 ou x86_64, você pode arquivar um pedido de recurso no issue tracker e anexar um arquivo contendo seus ganchos específicos do arch. Estes serão revistos para inclusão no libretools.

2 Uso

2.1 Quais são as opções de fullpkg

Fullpkg irá sempre ter uma lista atualizada de opções que podem ser mostradas usando
 $ fullpkg -h

2.2 Construindo pacotes usando o fullpkg

você precisa mudar para um diretório que contém um PKGBUILD para seu pacote alvo de executar fullpkg:

 $ cd /dir/with/PKGBUILD
 $ fullpkg [options] 

fullpkg irá copiar todos os PKGBUILDS e arquivos para construção do pacote alvo e suas dependências.

3 Problemas com fullpkg

Reporte um bug em issue tracker contendo [libretools] em seu título.