Crear paquetes .deb

Logotipo de debianCrear e manter un pacote para unha distribución non é unha tarefa doada. Crear un pacote require amplos coñecementos sobre o sistema de pacotes da distribución e coidado para pór as dependenzas correctas. Por outra banda, cada tipo de distribución ten o seu xeito particular de face-las cousas: así, as distribucións baseadas en .rpm crean un ficheiro na raíz do código fonte, mentres que as baseadas en .deb crean un subdirectorio cunha morea de ficheiros.

AGNIX publicou un artigo sobre a creación de pacotes deb onde se describe en profundiade como se crea un pacote debian, pero paréceme que para crear un pacote a nivel particular non é preciso meterse en tanto lío. Para facer un pacote para uso particular, sen preocuparse de dependezas, existe unha ferramenta chamada checkinstall que permite construír pacotes deb, rpm ou slackware de xeito moi doado.

Coma exemplo, crearei un pacote para etswitch, un programa que permite minimizar un xogo que empregue o motor gráfico do Quake 3. Os primeiros pasos son idénticos a instala-lo programa independentemente ó sistema de pacotes da distribución (estes pasos estándares para un programa que empregue as autotools, que non ten por que se-lo caso):

  1. Obtención do código fonte: wget http://hem.bredband.net/b400150/etswitch/etswitch-0.1.14.tar.gz
  2. Descomprimilo: tar -xvzf etswitch-0.1.14.tar.gz
  3. Configuralo indicando onde o queremos instalar: ./configure –prefix=/usr
  4. Compilación: make

Unha vez chegado a este punto é cando empregamos checkinstall para a creación do pacote:

checkinstall -D –pkgname=etswitch –pkgversion=0.1.14 –pkgrelease=1 –install=no

Isto crearanos un ficheiro chamado etswitch_0.1.14-1_i386.deb preparado para ser instalado no sistema.

Se en vez de crear un deb quixeramos crear un rpm, en vez de -D empregaríamos -R e para un pacote de Slackware -S. Os seguintes parámetros son o nome do pacote, versión e release (veces que se empaquetou esa versión). Por último, –install=no é para que non intente instala-lo pacote, que pode requerir privilexios de root segundo onde lle dixeramos que queriamos instala-lo programa.


Categories

Calendario

Novembro 2006
M T W T F S S
« Out   Dec »
 12345
6789101112
13141516171819
20212223242526
27282930  
3K2 theme by Hakan Aydin