lunes, mayo 26, 2008

Transformando paquetes [Alien]

Un problema bastante complejo son los binarios en Linux, me acuerdo que cuando usaba Windows yo bajaba de internet un programa (ya compilado) y se lo podía pasar a cualquier persona y lo podía instalar ejecutandolo si era un .exe

En Linux hay binarios para cada distribución y no solo eso.. hay binarios para cada versión de distribución.. asi que es muy probable que si busco un programa, por ejemplo el Wine y encuentre una version para SuSe 9 (y yo uso openSuse 11) se rompa todo y no ande.

También puede pasar que este buscando en internet el Wine y solo encuentre una version para Ubuntu y me tenga que joder porque no encuentro para openSuse y compilar codigos no es lo mio.

El futuro son los binarios multi-distribuciones :D , ya hay programas como el aMSN que utilizan Autopackage que permite generar instalaciones para cualquier Linux con tan solo un par de clicks.

Lo que yo les quiero mostrar es una herramienta muy útil que se llama Alien y sirve para convertir binarios de distinto tipo ej = rpm , deb, slackware gz y mas…

El programa es muy simple de utilizar.. me descargo un programa dificil de encontrar en la red que solo esta empaquetado para Debian / Ubuntu que se llama: elprogramadificil-2.0-1.i386.deb

$alien -r elprogramadificil-2.0-1.i386.deb

elprogramadificil-2.0-1.i386.rpm generated

Listo! ya tenemos el RPM para instalarlo en openSuSe, en Mandriva en RedHat o cualquier distribución que maneje RPM’s … también se puede convertir de RPM a DEB usando el parámetro “-d” jeje.

Las opciones que ofrece Alien son enormes:

$alien –help
Usage: alien [options] file [...]
file [...] Package file or files to convert.
-d, –to-deb Generate a Debian deb package (default).
Enables the following options:
–patch= Specify patch file to use instead of automatically
looking for patch in /var/lib/alien.
–nopatch Do not use patches.
–single Like –generate, but do not create .orig
directory.
-r, –to-rpm Generate a RedHat rpm package.
–to-slp Generate a Stampede slp package.
-t, –to-tgz Generate a Slackware tgz package.
Enables the following option:
–description= Specify package description.
-i, –install Install generated package.
-g, –generate Unpack, but do not generate a new package.
-c, –scripts Include scripts in package.
-k, –keep-version Do not change version of generated package.
-h, –help Display this help message.
-v, –version Display alien’s version number.
--
Entrada fuente >> openSUSE Girl


1 comentario:

eos dijo...

Gracias por las instrucciones.

Saludos.