lunes, 10 de diciembre de 2012

Tutorial: Instalar paquetes no .deb en Debian (y derivados)

Como siempre, un nuevo tutorial surge después de que le pasa algo a servidor y se pone a investigar cómo hacer algo.



Esta vez, estuve instalando una impresora en Debian. Todo debería ir bien, pero como instalé lo básico (sin entorno gráfico) y luego le instalé Mate, pues no tenía un gestor de configuración de impresoras. Por ello primero tuve que instalar cups y luego buscar un controlador bueno para mi impresora.

Me surgió que el paquete estaba en ".tar.gz", así que como no domino el arte de compilar, busqué otras soluciones más sencillas.

La respuesta fue convertir el archivo en cuestión en un ".deb" y luego aplicar el querido comando sudo dpkg .i <nombre de paquete>

¿Cómo lo hago?

Primero instalamos alien 
sudo apt-get install alien

Luego abrimos la terminal en la carpeta donde tenemos el paquete a convertir y tecleamos:
sudo alien <nombre de paquete> -to-deb

Esto nos convertirá nuestro paquete en un ".deb". Finalmente: 
sudo dpkg -i <nombre de paquete>

Ya tenemos nuestro paquete instalado correctamente en Debian.

También podemos convertir esos paquetes en ".rpm", ".pkg" y otros más y viceversa.

Aquí teneis los comandos a utilizar.

-d, –to-deb               Generate a Debian deb package (default).
–patch=<patch>       Specify patch file to use instead of automatically looking for patch in /var/lib/alien.
–nopatch                  Do not use patches.
–anypatch                 Use even old version os patches.
-s, –single                  Like –generate, but do not create .orig directory.
–fixperms                  Munge/fix permissions and owners.
–test                          Test generated packages with lintian.
-r, –to-rpm                 Generate a Red Hat rpm package.
–to-slp                       Generate a Stampede slp package.
-l, –to-lsb                   Generate a LSB package.
-t, –to-tgz                   Generate a Slackware tgz package.
–description=<desc> Specify package description.
–version=<version>  Specify package version.
-p, –to-pkg                Generate a Solaris pkg package.
-i, –install                  Install generated package.
-g, –generate             Generate build tree, but do not build package.
-c, –scripts                 Include scripts in package.
-v, –verbose              Display each command alien runs.
–veryverbose            Be verbose, and also display output of run commands.
-k, –keep-version      Do not change version of generated package.
–bump=number         Increment package version by this number.
-h, –help                    Display this help message.
-V, –version              Display alien’s version number.