En ocasiones necesitamos crear un paquete para instalar un determinado software en nuestros centros de una manera sencilla y automática.
A modo de ejemplo vamos a ver cómo crear paquetes de firefox 32 y 64 bits a partir de los .tar.bz2 descargados del ftp de firefox:
Lo primero que haremos será instalar los paquetes alien y fakeroot:
# apt-get install alien fakeroot
Una vez instalados, descargamos las últimas versiones disponibles a día de hoy:
$ wget http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest/linux-i686/es-ES/firefox-18.0.tar.bz2
$ mv firefox-18.0.tar.bz2 firefox-18.0-i386.tar.bz2
$ wget http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest/linux-x86_64/es-ES/firefox-18.0.tar.bz2
$ mv firefox-18.0.tar.bz2 firefox-18.0-amd64.tar.bz2
Una vez descargados, convertimos los ficheros .tar.bz2 a tar.gz:
$ bunzip2 -c < firefox-18.0-i386.tar.bz2 | gzip -c > firefox-18.0-i386.tar.gz
$ bunzip2 -c < firefox-18.0-amd64.tar.bz2 | gzip -c > firefox-18.0-amd64.tar.gz
Ahora que los tenemos en formato .tar.gz, los convertimos a .deb usando alien y retocamos lo que queramos.
Vamos a crear primero el paquete de 32 bits:
$ fakeroot alien -dv firefox-18.0-i386.tar.gz
Cuando termine, tendremos el paquete: firefox_18.0-2_all.debLo extraemos en una carpeta a la que llamamos, por ejemplo: firefox:
$ dpkg-deb -x firefox_18.0-2_all.deb firefox
$ dpkg-deb --control firefox_18.0-2_all.deb firefox/DEBIAN
A continuación retocamos lo que queramos:
$ cd firefox
$ mkdir opt
$ mv firefox opt/
$ cd ..
Editamos el fichero firefox/DEBIAN/control y cambiamos:
Architecture: all
por:
Architecture: i386
Si necesitáramos hacer operaciones después de instalar, como por ejemplo, crear enlaces o establecer alternativas, podríamos crear el archivo DEBIAN/postinst y añadir en él los comandos que queramos ejecutar al terminar de hacer la instalación.
Así mismo, podríamos ejecutar acciones antes de desinstalar el paquete, creando el archivo DEBIAN/prerm y añadiendo en él los comandos que queramos ejecutar.
$ dpkg-deb -b firefox firefox_18.0-2_i386.deb
Vamos a crear, por último, el paquete de 64 bits:
$ fakeroot alien -dv firefox-18.0-amd64.tar.gz
$ dpkg-deb -x firefox_18.0-2_all.deb firefox
$ dpkg-deb --control firefox_18.0-2_all.deb firefox/DEBIAN
$ cd firefox
$ mkdir opt
$ mv firefox opt/
$ cd ..
Editamos el fichero firefox/DEBIAN/control y cambiamos:
Architecture: all
por:
Architecture: amd64
Y empaquetamos:
$ dpkg-deb -b firefox firefox_18.0-2_amd64.deb
0 comentarios:
Publicar un comentario