Empaquetado RPM

Durante mi colaboración con el blog Usemos Linux, he hecho un tutorial que a mi modo de ver no ha quedado mal, sobre empaquetado RPM.

Lo pongo aquí para tener acceso más fácilmente:

  1. Conceptos básicos
  2. Teoría de los ficheros SPEC
  3. Empaquetando LÖVE
  4. Empaquetando Not Tetris 2

Básicamente se trata de explicar un poco la teoría y empaquetar el juego Not Tetris 2 después de su motor.

Un resultado bastante adictivo:

Actualización en agosto de 2013

Ahora que Usemos Linux se ha fusionado con Desde Linux, han eliminado mi autoría de los anteriores artículos, supongo que por problemas técnicos de la migración de artículos antiguos.

Con el mero objetivo de mantener dicha autoría y no perder la información en caso de otra futura migración, copio el contenido de las 4 partes del tutorial después del salto, y actualizo los links de arriba.

Conceptos básicos

Hoy proliferan las distribuciones basadas en Debian, con su conocido sistema de paquetes .deb. Sin embargo, no es el único sistema de empaquetado disponible. De hecho, el LSB dice que cualquier distribución que quiera cumplir los estándares debe soportar paquetes RPM. Vamos a ver cómo se crea uno.

Usaremos Fedora siguiendo las instrucciones de su wiki.

Preparar el entorno

Se recomienda crear un usuario específicamente para crear los paquetes, de modo que no rompamos nada del nuestro. También necesitamos una selección básica de paquetes:

sudo yum install @development-tools @fedora-packager

Ya está listo lo que necesitamos. Ahora vamos a crear el entorno de construcción de paquetes:

rpmdev-setuptree

Ahora tenemos la carpeta ~/rpmbuild, en la que se encuentran algunas otras carpetas:

  • BUILD: Aquí es donde se construirá el paquete.
  • BUILDROOT: Aquí se realiza el simulacro de instalación. Se escribirán los ficheros que se supone que deben instalarse cuando el usuario final instala el paquete.
  • RPMS: Una vez construido, se colocarán aquí los ficheros RPM binarios (.rpm) resultantes, listos para instalar.
  • SRPMS: Si así lo indicamos, aquí se colocarán los ficheros RPM de fuentes (.src.rpm), ideales para hacer una versión revisada o actualizada del paquete.
  • SOURCES: Aquí hay que poner las fuentes originales (.tar.gz, normalmente) y los parches que haya que usar.
  • SPECS: Aquí se colocan los ficheros de especificaciones (.spec).

Con esto ya tenemos el entorno preparado. En el próximo capítulo aprenderemos cómo entender esos extraños ficheros spec.

Teoría de los ficheros SPEC

La magia de los RPM es que en un solo fichero SPEC se incluyen todas las instrucciones para construir un paquete. Eso sí, primero hay que entenderlo, y a veces no es fácil…

6 comentarios en “Empaquetado RPM

  1. Hola, buenos días, soy editor de DesdeLinux, mil disculpas por la eliminación de tu autoría de tus artículos, al parecer no se pensó en eso al momento de realizar la fusión, pero es posible regresártela. Por favor, regístrate en el blog y después envíame al correo con el que estoy comentando tu nombre de usuario y las URLs de los artículos que publicaste, y yo me encargaré de devolvértela. Saludos.

    1. Gracias por tu interés, Manuel. Ya imaginaba que sería por eso. De todos modos, con que pongáis en los artículos algo como “contribuido por RecallStack ” es suficiente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s