canaima-semilla Documentation Release 1.0 2011, Equipo de Desarrollo de Canaima GNU/Linux July 25, 2011
CONTENTS i
ii
canaima-semilla Documentation, Release 1.0 Herramienta para facilitar la creación de distribuciones basadas en Canaima GNU/Linux Canaima Semilla es un paquete diseñado para facilitar a individuales, colectivos e instituciones la creación de distribuciones GNU/Linux personalizadas y adaptadas a sus necesidades (lo que conocemos como sabores), partiendo de la Metadistribución Canaima GNU/Linux. Actualmente existen varios sabores de Canaima: Canaima Primera Base: Sabor con aplicaciones básicas, desde el cuál se pueden instalar el resto de los sabores. Canaima Popular: Sabor ligero de fácil distribución, con aplicaciones de uso común. Canaima Institucional: Sabor utilizado en la Administración Pública Nacional venezolana para fortalecer la Soberanía Tecnológica dentro del estado. Canaima Educativo: Proyecto educativo liberador para los niños de la educación primaria. Canaima Forense: Sabor que facilita la investigación forense en sistemas informáticos. Canaima Colibrí: Sabor destinado a optimizar el rendimiento del sistema en computadoras de baja capacidad. Mediante una serie de sencillos pasos descritos en éste manual, usted podrá crear una imagen instalable de los sabores antes mencionados, o si lo prefiere, crear su propio Sabor Canaima. Opcionalmente, Canaima Semilla también instala los Sabores. Índice de Contenidos CONTENTS 1
canaima-semilla Documentation, Release 1.0 2 CONTENTS
CHAPTER ONE CANAIMA-SEMILLA 1.1 Herramienta para facilitar la creación de distribuciones basadas en Canaima GNU/Linux Author Luis Alejandro Martínez Faneyth <martinez.faneyth@gmail.com> Date 2011-03-10 Copyright Libre uso, modificación y distribución (GPL3) Version 2.0+0 Manual section 1 Manual group Desarrollo 1.1.1 MODO DE USO canaima-semilla [AYUDANTE] [PARÁMETRO-1] [PARÁMETRO-2]... [PARÁMETRO-N] [--ayuda] 1.1.2 DESCRIPCIÓN 1.1.3 AYUDANTES DE CANAIMA SEMILLA Construir Instalar (En desarrollo) 1.1.4 CONSTRUIR Crea una imagen instalable (ISO o IMG) basado en los perfiles de sabores existentes. Puede especificársele el tipo de Medio, la arquitectura a construir, y el sabor. Las imágenes resultantes del proceso de construcción se guardan en el directorio /usr/share/canaima-semilla/semillero/. USO canaima-semilla construir --medio="iso usb" --arquitectura="i386 amd64" --sabor="institucional popula 3
canaima-semilla Documentation, Release 1.0 PARÁMETROS --medio Tipo de imagen que será generada. Coloca iso para una imagen ISO grabable en CD/DVD o usb para una imagen IMG grabable en dispositivos USB. --arquitectura Arquitectura soportada por la imagen resultante. Canaima GNU/Linux soporta i386 y amd64. --sabor Sabor Canaima contenido en la imagen instalable. Debe estar definida en el directorio de los perfiles para poder funcionar. --ayuda Muestra la documentación para el ayudante. 4 Chapter 1. CANAIMA-SEMILLA
CHAPTER TWO CÓMO CONSTRUIR UN NUEVO SABOR CANAIMA Canaima Semilla facilita la creación de Sabores Canaima mediante el establecimiento de reglas o perfiles que definen los componentes que integran el sabor. Un perfil está compuesto de varios archivos con nombres específicos colocados dentro de una carpeta que lleve por nombre el nombre del sabor en minúsculas. La carpeta contendrá: 1.- (Obligatorio) Un archivo llamado sabor.conf con las siguientes variables y sus valores: PUBLICADO_POR : Individuo o colectivo que publica la imagen. Ejemplo: CADO_POR= Canaima GNU/Linux; http://canaima.softwarelibre.gob.ve/ SABOR_DIST : Distribución Debian en la que se basa el sabor. Ejemplo: SABOR_DIST= squeeze APLICACION : Nombre de la Metadistribución. Ejemplo: APLICACION= Canaima GNU/Linux PUBLI- MIRROR_DEBIAN : Mirror de Debian desde donde se extraerán los paquetes que contendrá la la imagen. Los reposito Ejemplo: MIRROR_DEBIAN= http://universo.canaima.softwarelibre.gob.ve/ COMP_MIRROR_DEBIAN : Componentes del MIRROR_DEBIAN a estar disponibles para la construcción de la imag Ejemplo: COMP_MIRROR_DEBIAN= main contrib non-free SABOR_PAQUETES : Lista de paquetes disponibles en MIRROR_DEBIAN o en alguna lista de repositorios extra. Ejemplo: SABOR_PAQUETES= canaima-base canaima-instalador-vivo canaima-blobs 2.- (Opcional) Una imagen PNG llamada syslinux.png de una dimensión no mayor a 1024x768 pixeles, la cuál servirá de fondo en el menú de inicio del Medio Vivo. 5
canaima-semilla Documentation, Release 1.0 3.- (Opcional) Una imagen PNG llamada banner-instalador.png de una dimensión exacta de 800x75 pixeles, la cuál será el banner del dialogo del instalador del Medio Vivo. 6 Chapter 2. Cómo construir un nuevo Sabor Canaima
canaima-semilla Documentation, Release 1.0 4.- (Opcional) Un archivo de configuración GTKRC llamado gtkrc-instalador, el cuál albergará los parámetros GTK para modificar la apariencia del instalador. Ver el sabor de 5.- (Opcional) Un par de archivos para definir repositorios extra en la etapa de instalación de paquetes finales (BI- NARY): Uno de extensión *.binary (pudiendo tener cualquier nombre), que contenga una lista de repositorios extra necesarios par Ejemplo: canaima.binary deb http://repositorio.canaima.softwarelibre.gob.ve/ pruebas usuarios deb http://seguridad.canaima.softwarelibre.gob.ve/ seguridad usuarios Otro de extensión *.binary.gpg, conteniendo la (o las) llave(s) GPG válida(s) correspondientes a los repositorios listados en el archivo *.binary. 6.- (Opcional) Un par de archivos para definir repositorios extra en la etapa de instalación del sistema base inicial (CHROOT): Uno de extensión *.chroot (pudiendo tener cualquier nombre), que contenga una lista de repositorios extra necesarios par Ejemplo: canaima.chroot deb http://repositorio.canaima.softwarelibre.gob.ve/ pruebas usuarios deb http://seguridad.canaima.softwarelibre.gob.ve/ seguridad usuarios Otro de extensión *.chroot.gpg (con nombre igual al anterior), conteniendo la (o las) llave(s) GPG válida(s) correspondientes a los repositorios listados en el archivo *.chroot. 7.- (Opcional) Un archivo llamado preseed-debconf en donde se incluirán los parámetros debconf que se quieran 7
canaima-semilla Documentation, Release 1.0 modificar en el modo nvivo del medio instalable. 8.- (Opcional) Un archivo llamado preseed-instalador en donde se incluirán los parámetros debconf a modificar en el instalador. Se provee en la dirección de los perfiles (/usr/share/canaima-semilla/perfiles) un perfil de ejemplo, el cuál podrá ser utilizado como base para nuevos sabores. La ausencia de alguno de los archivos Opcionales causará que Canaima Semilla use los valores por defecto (Debian). Los perfiles se definen en la carpeta /usr/share/canaima-semilla/perfiles, para la cual debes tener permisos de superusuario si deseas editarla. La mejor forma de crear un nuevo sabor, es duplicar la carpeta de ejemplo y comenzar a editar sus archivos hasta obtener el resultado esperado. 2.1 SUGERENCIAS Optimizar la estructura de paquetes del sabor a construir. Lo ideal es que los paquetes se encuentren organizados y agrupados en metapaquetes, de forma tal de que con incluir unos pocos paquetes en SABOR_PAQUETES, todo el árbol de dependencias sea incluído. No utilizar scripts de configuración. Toda configuración adcional que se desee realizar al medio vivo, debe ser incorporado en paquetes detro de su respectivo postinst. :) 8 Chapter 2. Cómo construir un nuevo Sabor Canaima