Morphix
Morphix es una distribución modular en formato de LiveCD basada en Knoppix (que a su vez está basada en Debian). El libro de Morphix es una introducción al uso de esta distribución para la creación de distribuciones a la medida en formato de LiveCD. Contará con Cómos (Howtos) y pequeñas recetas que permitirán adaptar Morphix para las diferentes necesidades. La palabra "Morph" se refiere en inglés a cambio de forma y se dejará si traducir, pues no existe un neologismo, que a juicio del autor exprese en castellano lo mismo de forma corta.
Quisiera agradecer a Brendan M. Sleight, quien escribió la mayoría de los documentos en inglés que sirvieron para la creación de este texto en español.
Generalidades
editarLa facilidad por la cual se pueden producir distribuciones derivadadas a partir de Morphix radica en su diseño modular. En esencia se puede decir que Morphix cuenta con tres módulos importantes:
- Un módulo base : Encargado del reconocimiento del hardware, la carga de algunos scripts de inicio y del kernel.
- Un módulo principal : Contiene las aplicaciones más importantes del LiveCD, generalmente el modo gráfico y el ambiente de escritorio.
- Uno o varios minimódulos : Contienen aplicaciones que pueden añadir nueva funcionalidad al módulo principal o cambiar la que ya tiene.
Cómo hacer el "morph" más sencillo (lanzar una página de inicio)
editarResumen
editarEste corto documento describe como hacer el CD personalizado de Morphix más sencillo usando un mínimo de herramientas. Incluso sin necesidad de tener un sistema GNU/Linux instalado. Puede usar un LiveCD de Morphix para hacer su propio LiveCD de Morphix.
El CD construido será un LiveCD que "automágicamente" mostrará en un navegador una página de inicio. Se brindan también detalles hacerca de cómo hacer un CD alternativo que "automágicamente" lanzará una aplicación en el momento de arranque.
Es posible remasterizar un CD de Morphix de forma que tome menos espacio en disco que en este ejemplo. Es más rápido si usted remasteriza desde un sistema GNU/Linux ya instalado, preferiblemente Debian, pero la intención de este documento es dar el ejemplo más sencillo de "morph".
Ingredientes Requeridos
editar- Un Computador para encender
- Un LiveCD de Morphix 0.4.1
- Un Disco Duro con 800 Mb libres (aprox)
- Un CD en blanco (preferiblemente uno reescribible)
- Un Documento HTML llamado index.html, que le gustaría adicionar al CD.
[Opcional]
- Uno o más documentos que quiera adicionar al CD.
- Un enlace o un binario de la aplicación que desea autoejecutar.
Tiempo aproximado de cocción: 15 Minutos + Tiempo de quemado para el CD.
Entrando a la Cocina
editarPrimero, arranque su sistema usando el LiveCD de Morphix 0.4.1.
Note que todos los comandos abajo son tecleados (o cortados y pegados desde este documento) a una consola de comandos. Así que abra una consola de comandos, que usaremos para el resto del proceso. Luego configure una contraseña temporal (la que prefiera) de superusuario (root):
sudo passwd
Luego adquiera permisos de superusuario/root:
su
Cortando los ingredientes para El Morph
editarEstamos guardando todos los archivos de morphix en el disco duro mientras hacemos el nuevo CD, así que la primera tarea es montar su disco duro.
mount /dev/hda1 /mnt/hda1
Nota: Si tiene múltiples particiones reemplace /dev/hda1 con una partición apropiada /dev/hda2, /dev/hda3 o un segundo disco duro /dev/hdb1.
Para dar un vistaso de cómo Linux indexa sus discos duros y unidades de CD, etc puede ejecutar el siguiente comando:
cat /etc/fstab
Ahora creamos un directorio para guardar los archivos de morphix:
mkdir /mnt/hda1/morphix
Copie los archivos desde el LiveCD, (esto tomará algunos minutos):
cp -a /cdrom/* /mnt/hda1/morphix/
Ahora cree el directorio donde los archivos html serán guardados.
mkdir /mnt/hda1/morphix/cdrom/html/
Luego copie los documentos HTML a esta área (reemplace /donde_los_guardo con la ruta correcta)
cp -a /mnt/hda1/donde_los_guardo /mnt/hda1/morphix/cdrom/html
Ahora necesitamos
Cómo usar fácilmente TROM (Total Remastering of Morphix)
editarCómo usar el generador de mini-módulos
editarIntellibuild
editarv0.5, 09 June 2004 Kermit Jones kermit (at) freelifeministries.org
Tradicido por Rafael Medina (REEMC)
Intellibuild (iBuild) es un sistema de scripts de python diseñado para hacer la creacion/remasterización de un LiveCD Morphix o Knoppix muy simple y fácil. Usted puede modificar fácilmente cambios y probarlos sin tener que recordar todo la sintaxis de los comandos remasterización.
Introducción
editarVista general
editarIntellibuild es un sistema de scripts que apuntan a ayudar a los remasterisadores de Morphix y Knoppix a hacer su trabajo eficientemente produciendo remasterizados modificados. No se limitan a Morphix y Knoppix y están actualmente disponibles y probados en Debian GNU/Linux (testing y unstable).
Si esta familiarizado con el proceso de remasterizado de Knoppix, usted estara bien enterado de los pasos básicos implicados, estos son :
a) extraer el ISO original de knoppix; b) chroot/boot into the extracted system; c) Modificar; d) recomprimirlo de nuevo a un archivo .iso; y e) probar si el ambiente se comporta igual en el LiveCD.
Este porceso es un absoluto desperdicio de tiempo y la mayoria de afinaciones de la configuración se hace a mano. Si sucede algo extraño y su remasterizado de LiveCD tiene rupturas, en la mayoria de los casos usted debe rehacer el proceso entero. Usted a menudo puede querer poner al día su Cd para actualizar el Cd más reciente de Knoppix (mejor soporte para hardware, nuevos programas , etc.) pero esto no es garantía que su versión será compatible o trabaje correctamente.
Intellibuild automatiza la mayoría de este proceso por rompiendo de la sesión de remasterizado en varios segmentos pequeños, cada uno de de los cuales es bastante independientes de los otros. una vez instalado, usted puede construir un LiveCD desde los pedazos vía un comando. Todos los paquetes nuevos son instalados o los archivos de los configuracíon se copian sobre la nueva distribución.
En resumen, Intellibuild permite que usted se concentre en sus propios arreglos para requisitos particulares y preocuparse del resto del proceso de remasterizado "detrás de escena"
Requisitos
editarIntellibuild puede funcionar en la mayoría de las variantes *nix, y eventualmente en MS WINDOWS, también. Actualmente, y para el proposito de este Howto, el iBuild requiere lo siguiente:
- Debian testing o inestable (inestable es la prueba primaria) - Al menos 3GB de la espacio libre en disco si usted está remasterizando un CD entero. - Sudo para el usuario - Chroot - Cloop Utils (> 2,0) - Python (> 2,3) con las bibliotecas del xml (paquete python-xml)
NOTA: Este Howto fue probado y desarrollado en una máquina que funcionaba el núcleo de linux 2,4,21, KDE 3,2, y las últimas actualizaciones en Debian inestable. Actualizo alrededor de una vez al mes.
Reconocimientos
editarQuisiera agradecer a los autores de los programas enumerados abajo, en primer lugar por la escritura de estos para el uso de todos nosotros y también por entregar las versiones más recientes de este documento una vez terminado.
Simon Belak (simon (en) owca.info) codificó el "framework" básico y la infraestructura de Intellibuild. Jure Cuhalev (gandalf (en) owca.info) es el desarrollador y el soporte actual del iBuild. Kermit Jones (kermit (en) freelifeministries.org) es el mantenedor y el probador de este HOWTO.
Negación
editarUtilice la información de este documento bajo su propio riesgo. Rechazamos cualquier responsabilidad potencial por el contenido de este documento. El uso de los conceptos, de los ejemplos, y/o del otro contenido de este documento está enteramente bajo su propio riesgo.
Todos los copyrights son propiedad de sus dueños, a menos que esté especificado de otra manera. El uso de un término en este documento no debe ser visto como afectante de la validez de cualquier marca registrada o marca de servicio.
Se recomienda hacer un backup de archivos importantes y/o relevantes antes de cualquier procedimiento de instalación.
Copyright
editarA menos que este indicado de otra manera,el copyrighted de los documentos HOWTO de Linux son propiedad de sus respectivos autores. Los documentos HOWTO de Linux se pueden reproducir y distribuir en forma parcial o completa , por cualquier medio físico o electrónico, siempre y cuando este aviso de copyright se conserve en todas las copias. Se permite y se anima la redistribución comercial; sin embargo, el autor quisiera ser notificado de cualquier distribucion.
Todas las traducciones, trabajos derivados, o los trabajos agregados que incorporen cualquier documento HOWTO Linux se deben cubrir bajo este aviso de copyright. Es decir, usted no puede producir un trabajo derivado de un HOWTO e imponer restricciones adicionales para su distribución. Las excepciones a estas reglas se pueden conceder bajo ciertas condiciones; por favor contacte un coordinador del Linux HOWTO.
En resumen, deseamos promover la difusión de esta información a través de tantos canales como sea posible. Sin embargo, deseamos conservar el copyright en los documentos de HOWTO, y quisiéramos ser notificados de cualquier plan para redistribuir los HOWTOs.
Si usted tiene cualquier pregunta, por favor escribeme a mi email. (Véase Arriba)
La Versión Corta
editarEsta sección esta diseñada para darle una descripción exacta de qué hará usted con el iBuild y permitir que pueda comenzar en tan poco tiempo como sea posible.
El proceso del iBuild
editarHay varias cosas que deben ser ubicadas para crear su propio LiveCD personalizado. La ventaja de usar Morphix es su diseño modular. Usted puede utilizar los módulos previamente creados y simplemente agregar sobre ellos sin tener que hacer todo el trabajo involucrado en los mismos.
Las primeras dos cosas que el iBuild hace es decargar dos módulos base, que son fundamentales para su LiveCD - el principio esencial, por así decir. Los dos scripts iniciales (preparebase.sh
y preparemainmod.sh
) descargan el MorphixBase-0.4-1d.iso
y el BareX.mod.iso
respectivamente. Una vez que se haga eso, usted podría construir el "STL Morphix"estándar corriendo el comando #sudo python intellibuild/manager.py config/stl.xml
Usted desea probablemente correr el iBuild una vez para cerciorarse que está trabajando (recomiendo activar el proxy (véase abajo) y el usar el short.xml
, pues será mucho más rápido)
La siguiente cosa que usted desea hacer es personalizar su LiveCD para requisitos particulares -ése es el punto de iBuild, correcto? Correcto. Haga una copia de short.xml
o stl.xml
y heche una ojeada adentro. Usted verá muchas líneas con <patch>packagename</patch>
. Cada <patch> de entrada agrega algo a la base (
BareX.mod.iso
y MorphixBase-0.4-1d.iso
). Es Muy simple <patch>ssh</patch>
corrijalo corriendo simplemente "apt-get install ssh" dentro del chroot de su LiveCD. Usted puede agregar o substraer qué es agregado a su LiveCD agregando o comentando fuera del patch en el config.xml
del archivo (short.xml stl.xml, etc).
Usted puede también tener un cambio en el patch, agregar o copiar archivos de su configuración personal a su LiveCD. Una gran ejemplo es el < patch>kde-skel</patch > patch, que copia un directorio personalizado .kde de /ibuild/data/kde-skel/.kde a su CustomCD/etc/skel/.kde . Esto guarda un wizard de KDE para correrlo cada vez que carga su LiveCD.
Ésta es una descripción muy corta de qué está sucediendo dentro de iBuild cuando usted lo corre. Vea por favor las secciones de abajo para más ejemplos e instrucciones en profundidad para la personalizacion. Su iso será localizado en /ibuild/release .
También, si usted planea la creación de estructuras consecutivas, usted deseará definitivamente utilizar las características de proxy/caching incluidas en laversión 12 y posteriores. Cerciorese de < patch>proxy</proxy > listadas en su config.xml después de < patch>MountProc</patch > .
Prepárese
editar
Serciorese de hacer Sudo, Chroot, y tener instalado Cloop-utils y mkisofs.
Consiga el iBuild y prepárelo:
Nota: Por favor cerciorese que usted esté descargando la vercion mas reciente del iBuild. Se agregan muchas características y los bugs están uvicados en cada nueva vercion. Cerciorese también de tener el número de versión más reciente de las siguientes instrucciones.
La versión actual se puede encontrar en: http://gand.owca.info/ibuild/
#cd /
#sudo wget http://gand.owca.info/ibuild/ibuild-0.2.tar.gz
#sudo tar -zxvf ibuild-0.12.tar.gz
#sudo rm ibuild-0.12.tar.gz
#cd /ibuild
#sudo /bin/bash preparebase.sh
#sudo /bin/bash preparemainmod.sh
Config.xml
editar
Cambie cualquier ajuste que usted desee. Si usted desea el básico MorphixCombined-KDE.iso use stl.xml .
Turn on Proxy
editar
#cd /ibuild/proxy
#/bin/bash proxy
Nota: Cerciorese de tener el < patch>proxy</patch > en la lugar correcto después de < patch>MountProc</patch > en su config.xml .
Estructura
editar
En una nueva terminal:
#cd /ibuild
#sudo python intellibuild/manager.py config/stl.xml
Quemado
editar
Eche una mirada en /ibuild/release y vea stl.iso ¡que es esto!
Corte y pegue
editar
Para el REALMENTE impaciente (bur[n]er):
NOTA: Copie y pege los siguientes comandos solamente si usted tiene ya usa exitosamente Intellibuild. Preste especial atención a los requisitos (sudo, chroot, cloop-utils, mkisofs, python) según lo dispuesto en el capítulo 3.
Descarge:
cd / && sudo wget http://gand.owca.info/ibuild/ibuild-0.12.tar.gz && sudo tar -zxvf ibuild-0.12.tar.gz && sudo rm ibuild-0.12.tar.gz
Prepáre:
cd /ibuild && sudo /bin/bash preparebase.sh && sudo /bin/bash preparemainmod.sh
Turn on Proxy:
cd /ibuild/proxy && /bin/bash proxy.sh
Estructura (en una terminal aparte):
cd /ibuild && sudo python intellibuild/manager.py config/stl.xml
Preparandose Para Correr
editar
Intellibuild requiere ciertos permisos y programas de estar su lugar para construir con éxito un LiveCD. Actualmente, usted necesitará Debian testing o inestable (o las últimas versiones estables de Python y de Cloop-utils).
Sudo
editar
Sudo (Superuser do) permite al administrador de sistema dar a ciertos usuarios (o de grupo usuarios) la capacidad de correr algunos (o todos) los comandos como root o a otros usuarios mientras que registra los comandos y argumantos. Utilizaremos el método más simple para levantarnos y el funcionamiento.
#su
#rootpassword
#apt-get install sudo
#visudo
Agregue las siguientes dos líneas:
root ALL = (ALL) ALL
username ALL = NOPASSWD: ALL
Entonces teclee F2 para salvar y F10 para salir.
Chroot
editar
Chroot permite que usted cambie el directorio / que usted está trabajando a uno de su eleccion. Llamado a menudo "chroot jail" usted puede hacer cosas en el chroot que no perjudicaran su sistema. Usted necesita el chroot instalado para intellibuild:
# sudo apt-get install chrootuid
Cloop-utilitis
editar
Cloop-utils permite que comprima y descomprima serca de 2 gigabytes de datos en un cd-r 700MB.
Proxy - Polipo
editar
Polipo es un HTTP Proxi que que fue diseñado originalmente como proxi personal, es decir un proxi que es utilizado por un solo usuario o un grupo pequeño de usuarios. Esto significa que una vez que usted descargue los paquetes necesitados para el iBuild (y cualquier patch que usted incluya), él se agrega, o guarda en el cache de su disco duro para la próxima vez.
Para dar una idea de los ahorros del tiempo... me toma cerca de 2 horas crear un short.iso la primera vez y solamente 20 minutos en construcciones consecutivas. Cuando una versión reciente aparece en los mirrors, Polipo "pone al día" el cache de su disco duro de una forma transparente.
Puede correr Polipo para iBuild haciendo lo siguiente:
#cd /ibuild/proxy
#/bin/bash proxy.sh
Descargar iBuild
editar
Nota: Por favor cerciorese que usted esté descargando la vercion mas reciente del iBuild. Se agregan muchas características y los bugs están uvicados en cada nueva vercion. Cerciorese también de tener el número de versión más reciente de las siguientes instrucciones.
La version actual se puede encontrar en: http://gand.owca.info/ibuild/
La version actual (cuando esto fue escrito) es al 0.12. Descargela e instalela:
#cd /
#sudo wget http://gand.owca.info/ibuild/ibuild-0.12.tar.gz
#sudo tar -zxvf ibuild-0.12.tar.gz
#sudo rm ibuild-0.12.tar.gz
Los pasos anteriores descargan y extraen el iBuild a la carpeta /ibuild, que es el path por defecto para los scripts. Usted puede cambiar la localización, pero segurese de cambiar los paths de los <basesettings> según lo mencionado abajo en la sección config.xml.
Preparebase.sh
editar
Preparebase.sh es un script de shell que hace exactamente lo qué su nombre indica. Descargar el actual MorphixBase.iso y lo extrae en /ibuild/base/1d. Ésta es básicamente la mínima cantidad de archivos que se han extraído ya de la distribución de Knoppix. Si usted ya ha descargado la base, usted puede copiarla al directorio /ibuild. Si no, el escript lo descargará y preparará para usted.
La base actual es MorphixBase-0.4-1d.iso
#cd /ibuild
#sudo /bin/bash preparebase.sh
Preparemainmod.sh
editar
Preparemainmod.sh es script de shell que descarga el módulo básico necesario para obtener una X funcional, llamado BareX.mod.iso. Como con preparebase.sh, si usted lo a leido y tiene el BareX.mod.iso, simplemente copíelo a /ibuild. Si no, el escript lo descargará y preparará para usted.
#cd /ibuild
#sudo /bin/bash preparemainmod.sh
NOTA: Usted necesitar correr solamente una vez preparebase.sh y preparemainmod.sh. Usted no necesitará correrlos de nuevo hasta que se proporcionen actualizaciones (o usted instale una nueva versión de iBuild). Vea la sección de noticias en LiveCD.net o Morphix.org. Usted tendrá que poner al día sus archivos del iBuild (o conseguir la versión mas reciente). Con esperanza habrá un paquete .deb en el futuro.
Opciones a Considerar
editar
Es una buena idea tener el directorio /ibuild en el drive más rápido disponible. Esto es porque la compresión y la descompresión de archivos depende en gran parte de la CPU y el disco I/O.
Configurando su LiveCD
editar
Estructura del config.xml
editar
Usted verá abajo un ejemplo básico del archivo config.xml.
Nota: El archivo de configuración debe ser un documento válido de xml, de lo
contrario no trabajará. Esto significa que los comentarios están hechos vía
<!-- este es el comentario. -->
Como puede ver el archivo de configuración tiene diferentes secciones. Las propiedades globales son fijadas por globalsettings. Esto define donde están los archivos que se están cambiando y la localización de patchs. Estos ajustes son accesibles a todos los patchs. Las siguientes secciones definen qué patchs se utilizan como y en qué orden se ejecutan al hacer una 'estructura' completa. El anterior, LocalSettings, define los ajustes para los patchs individuales.
Configuracion base
editar
La sección de <basesettings> es en donde usted define los ajustes globales para su iBuild.
Global settings
editar
Los siguientes son los ajustes globales encontrado en él archivo config.xml. Observe por favor que algunos están bajo "LiveCD identification"
<release> - donde iBuild pondrá el .iso personalizado que es construido.
<basepath> - el directorio que iBuild utilizará para la extracción y trabajo.
<sourcepath> - fuente que el .iso utiliza para la creación. Del directorio de
trabajo.
<releasepath> - información sobre su release personalizado.
<sourceimagepath> - donde iBuild busca el .iso original que usted está
personalizando.
LiveCD identification
editar
Usted puede cambiar el nombre de su LiveCD.iso a través de 3 pasos:
<title> - su titulo
<id> - su identificacion
<mainmod> - como usted quisiera que su MOD sea llamado
Patches
editar
En resumen, los patchs son escripts de python que residen en el directorio de patchs que hacen todo el "trabajo duro" de personalizar su LiveCD. Los patchs tienen cierta estructura, saber que hay un directorio con un escript control.py en el y cualquier otro archivo usados por el patch. El nombre del directorio del patch es el que usted especifica en el archivo de configuración de xml (aquí referido onfig.xml).
Los patchs son cómo usted introduce al iBuild la personalizacion que usted quiere hacer. El método más simple de aplicar un patch es simplemente incluir una línea de patch's de la lista de <patch>. Asegúrese de que el patch que usted desea aplicar esté en el directorio <patchsource> apropiado.
Ver abajo el capitulo 5 en como crear sus propios patchs para aplicar
Configuracion local
editar
<label> - usted debe cambiar el nombre del .iso de su distro para reflejar
<mainmodiso> - su módulo principal primario es cambiado/personalizado
Importante para personalizar patchs:
<patchsource>/ibuild/patches</patchsource> - dice a iBuild dónde buscar patchs
<datapath>/ibuild/data</datapath> - dice a iBuild donde buscar archivos de
configuracion personalizados en patchs
Ejemplos de Config.xml
editar
El siguiente archivo de configuración mínima. No enumera todo lo necesario, pero basta de demuestra para la estructura. Es muy cercano al archivo stl.xml que se encuentra en el directorio /ibuild/config
sample.xml:
<configuration>
<basesettings>
<type>Morphix</type>
<title>GNUstep</title>
<id>stl</id>
<release>/ibuild/release</release>
<basepath>/ibuild/work/stl</basepath>
<sourcepath>/ibuild/work/stl/source</sourcepath>
<releasepath>/ibuild/work/stl/release</releasepath>
<sourceimagepath>/ibuild/</sourceimagepath>
<mainmod>stl.mod</mainmod>
<patchsource>/ibuild/patches</patchsource>
<datapath>/ibuild/data</datapath>
<verbose>1</verbose>
<simulate>0</simulate>
</basesettings>
<patches>
<patch>PrepareRelease</patch>
<patch>PrepareSource</patch>
<patch>MountProc</patch>
<patch>proxy</patch>
<patch>sources-unstable</patch>
<patch>bootsplash-theme</patch>
<patch>grub-theme</patch>
<patch>kernel-package</patch>
<patch>build-essential</patch>
<patch>console-tools</patch>
<patch>cloop-utils</patch>
<patch>PackM</patch>
</patches>
<localsettings>
<patchsettings name="PackM" >
<kfilesystem>KNOPPIX filesystem</kfilesystem>
<kpublisher>Intellibuild script</kpublisher>
<label>stl</label>
</patchsettings>
<patchsettings name="PrepareSource" >
<mainmodiso>BareX.mod.iso</mainmodiso>
</patchsettings>
</localsettings>
</configuration>
Puede encontrar grandes diferencias abajo en los los archivos de ejemplo /ibuild/config:
- stl.xml - es usado por defecto en "MorphixCombined-KDE"
- gnustep.xml - Mas información en http://
Following not yet there:
- basicx.xml - es usado por defecto en "MorphixCombined-LightGUI" con xfce4.0
- cli.xml - Es una consola básica Linux con solo algunos sistemas
Creación de Patches
editar
Los patch son esas pequeñas cosas que permiten que usted agregue un programa, lo configure, y cambie todos archivos de configuracion dentro del chroot. Esto significa que usted puede forzar para que ocurran cambios automáticamente en su LiveCD.
Control.py
editar
Control.py es un script de python que dirige a iBuild en qué hacer con ese patch. Lo encontrará en el directorio /ibuild/patches/mypatch/, en "mypatch" está el nombre del patch que usted se está aplicando. La manera más fácil de aprender es ver un ejemplo.
NOTA: Para Comentar una línea en control.py, usted debe utilizar un # al
inicio de línea.
Apt-get
editar
Apt-get es una herramienta de empaquetado de Debian. que uvica el paquete que usted nesecita, determina cualquier dependencia, y entonces descarga y configura todos los archivos necesitados para instalar su programa. Es una de las características más conocidas de Debian y una de las mas apreciada por sus usuarios.
iBuild utiliza una escript de python para ejecutar Apt-get dentro del ambiente de chroot.
NOTA: Vea la sección de proxi para información sobre guardar apt-get para
re-descargar los mismos paquetes en estructuras consecutivas.
Single Package Install
editar
Uno de los patch más simples de iBuild es el que instala el nethack. Abriendo control.py (/ibuild/patches/nethack/control.py), veamos una línea, que es:
apt.install_packages('nethack')
Esto instalará nethack en su LiveCD. Con una pequena busqueda (Apt-get install -s nethack) muestra que nethack-common y nethack-x11 seran instalados, esto con el paquete debian nethack.
Instar Multiples Paquetes
editar
¿Qué si usted desea instalar nethack-consola, también? Dira Usted , pues diría simplemente así:
pt.install_packages('nethack nethack-console')
¡Eso es ! Ahora los paquetes de nethack (nethack-common y nethack-x11) y los paquetes nethack-console serán instalados. Observe que esto es un ejemplo simplemente. Usted pude hacer una combinación de cualquier paquete existente en Debian. Apenas este seguro usted hace el Apt-get nombre correcto (es decir, con un simple Apt-get kernel usted puede especificar qué paquete de kernel desea usted).
Personalizando fuentes
editar
Puede pasar que usted desee instalar un paquete que no esta en los mirrors oficiales de Debian. Un ejemplo actual en iBuild es mplayer. Viendo el archivo de control de mplayer, podemos ver cómo agregar una fuente "en marcha" para la estructura. simplemente Agregue la siguiente línea sobre la línea de apt.install_packages:
apt.AddSource('deb ftp://ftp.nerim.net/debian-marillat/ unstable main')
Esto le permitirá descargar paquetes de fuentes non-official fácilmente. La función de apt.AddSource también permite agregar permanentemente a /etc/apt/sources.list la lista para actualizaciones posteriores que usted instale en el disco duro para su LiveCD personalizado.
Menus y .desktop
editar
Yo juro (Gandalfar) tomó la decisión para seguir la estructura de menus de freedesktop.org usando los archivos del .desktop para la colocación apropiada de programas en el menú. Sin embargo, hay métodos alternativos que se pueden utilizar en iBuild, aunque no están garantizados para trabajar.
Remove the Default
editar
Diferentes managers de paquetes ponen sus menús en diversos lugares. Que quedan a menudo bajo menú de "Debian" después de instalarlo. Esto es confuso pues usted tiene que mirar a través de dos árboles de menús. Nuestro ejemplo será el archivo del vncserver de control.py. Para guardar la adición del programa adición al árbol del menú de Debian, usted tendría la línea siguiente (después de apt.install_packages):
menu.remove('vncserver')
Locasacion y Copying de .desktop
editar
Continuando con vncserver, usted desea especificar la fuente (src) y el destino (dst) del archivo .desktop (véase abajo para su configuración). Si se asume que el src está en la carpeta de patch (/ibuild/patches/vncserver/), usted tendría lo siguiente después de la función de menu.remove.
src = os.path.join(getsetting('patchsource'),'vncserver','vncserver.desktop')
dst =
os.path.join(getsetting('sourcepath'),'usr/share/applications','vncserver.desktop')
filesystem.Copy(src,dst)
Ese último comando copia el archivo .desktop de la fuente al directorio de destino, que es freedesktop.org compilante. Esto significa que debe trabajar para KDE, Gnome, y eventualmente xfce4.0.
Diseno Alterno del Menu
editar
Las siguientes funciones trabajan solamente con ciertos programas, pero usted puede sentirse libre intentarlo. Esto cambiará la localización del programa dentro del árbol del menú de Debian.
menu.location('vncserver','Tools')
Una vez más esto no está garantizado que funcione.
Copiado de archivos o Directorios personales
editar
Puede ser que usted a menudo desee copiar un archivo de configuración personal a su LiveCD. Esto es muy fácil con el iBuild. como ejemplo, Vamos a usar el patsh de <patch>kde-skel</patch>. Que está en el control.py, usted verá lo siguiente:
import os
skel = os.path.join(getsetting('sourcepath'),'etc','skel','.kde')
theme = os.path.join(getsetting('datapath'),'kde-skel','.kde')
filesystem.Copy(theme,skel)
Esto es muy fácil de Hacer, una vez que lo logre con de esta.
En la línea skel (usted puede nombrar el dst o destino, si usted gusta) dice a iBuild a donde el arcivo/directorio sera copiado. Este ejemplo dice el destino de /etc/skel/.kde en nuestro LiveCD personalizado.
En la línea thema (usted puede nombrar el src o fuente, si usted gusta) dice a iBuild de donde el archivo/directorio será copiado. El 'datapath' se define en nuestro config.xml (es /ibuild/data por defecto). Este se busca en /ibuild/data/kde-skel/.kde.
filesystem.Copy(theme,skel) (que podría ser (src, dst) o (fuente,destino) si usted está utilizando esos nombres u ortos en su lugar ) dice a iBuild copiar de theme a skel el directorio de .kde (usted podría fácilmente definir un como archivo).
El propósito de este patch en particular es fijar el arranque por defecto de KDE. Tener el archivo .kde en /etc/skel guarda un Wizard de configuración de KDE para lanzarle cada vez que arranque su CD.
EL archivo .desktop
editar
NOTA: Esta sección es un poco antigua. La pondré al día pronto. Para un archivo de
escritorio de trabajo, vea el patch <patch>stgl-tour</patch>.
Realmente el lugar a donde ir para esto es freedesktop.org. Si usted desea un ejemplo, vea el archivo vncserver.desktop, que quizá debe ser mucho más corto. Rummage alrededor en los paquetes si usted desea ver otros.
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=vncserver
GenericName=vncserver
Comment=
Icon=
Exec=/usr/bin/vncserver
Terminal=false
Categories=Network
Que significa esto :
[Desktop Entry]
Type=Application - probablemente no nesecite de cambios.
Encoding=UTF-8 - probablemente no nesecite de cambios.
Name=vncserver - el nombre que usted desea que aparesca en el menú.
GenericName=vncserver - una descripción común
Comment= - cualquier cosa que usted quiera
Icon=
Exec=/usr/bin/vncserver - el comando a ejecutar para correr el programa.
Terminal=false - ¿el programa funciona en un terminal?
Categories=Internet - El sub-menu que usted desea. Usted puede también hacer algo
como =Edutainment;Arcade
En lo que respecta a la entrada de las "categorías": Parece que usted debe utilizar una categoría que exista actualmente dentro de la estructura del K menú de KDE para la colocación apropiada. Estamos mirando la manera de cambiar esto, así que sientase a guso experimentando, por favor hagamos y dejemos saber. Puede ser un ajuste de skel/.kde, pero no estamos seguros, atm.
Quemando el .iso
editar
Linea de Comandos
editar
La forma más simple, una vez que usted haga su config.xml , teclee:
#cd /ibuild
#sudo python intellibuild/manager.py config/config.xml
Si usted está ejecutando este comando por segunda vez en el mismo directorio de trabajo, usted recibirá el siguiente error
Error: /ibuild/work/custom/release: directory already exists.
Primero desmonte el dev y proc:
#sudo umount /dev
#sudo umount -l /ibuild/work/custom/source/proc
Solo después se puede borrar el directorio del release.
#sudo rm -rf /ibuild/work/custom
Shell interactiva
editar
Usted también puede interactuar en el proceso de construccion de su LiveCd. De /ibuild, simplemente ejecute:
through the process of building your LiveCd, also.
From /ibuild, simply run:
#sudo python intellibuild/manager.py
Usted puede el basconfig con: load baseconfig config.xml
y ejecutar el proceso entero con: build
o simplemente construir un a patch: build <patch name>
Cambion de configuracion Post quemado
editar
Hay varias maneras de modificar su .iso una vez que usted lo haya construido, sin tener que pasar por el proceso entero. Esto NO es recomendado a menos que usted esté haciendo dentro de un timeframe razonablemente corto, pues pueden afectar uno u otro patch y los cambios de dependendecias no pueden ser reflejados.
Para hacer esto, primero renombre su iso actual (no lo use piera todo su trabajo!) o cambie el nombre al nuevo que será creado (en config.xml en <mainmod>). Entonces corra el siguiente en /ibuild:
#sudo intellibuild/manager.py config/config.xml PATCH1 PATCH2
Se quejará probablemente de que existe /ibuild/work/custom/release. Vaya a continuación y borre ese directorio:
#sudo rm -rf /ibuild/work/custom/release
Usted no podra borrar /ibuild/work/custom/source sin primero desmontar el /dev y /proc:
#sudo umount /dev
#sudo umount -l /ibuild/work/custom/source/proc
Entonces usted puede borrar el directorio:
#sudo rm -rf /ibuild/work/custom
Test y Quemado
editar
Probablemente usted ya tiene su programa de quemado de .iso preferido. Usted puede ir a continuación y quemar su .iso o lo puede probar usando la "vercion de la instalacion del hombre pobre."
Instalacion del hombre pobre
editar
La instalacion de el hombre pobre es una manera de arancar su .iso sin quemarlo realmente en un CD. Lo arranca en su disco duro y hace la misma detección del hardware que el LiveCD. Requiere que usted tenga por lo menos un CD de Morphix, aunque. Asumiendo que su directorio de /ibuild está en /dev/hda1, usted arancaria el CD y teclearia lo siguiente en el Morphix: prompt.
Morphix: morphix fromhd=hda1/ibuild/release/your.iso
Usted puede copiar el .iso via el comando cp -a a donde usted lo quisiera y cambiando el path apropiado.
Quemado via línea de comandos y cdrecord
editar
Compruebe su dispositivo con
#cdrecord --scanbus
Asumiendo que su comando dio 0,0,0:
#cdrecord dev=0,0,0 speed=12 -dao /ibuild/release/your.iso
Burn via K3B
editar
Vaya a la configuracion. Asumiendo que K3B esta configurado, vaya a las HERRAMIENTAS, CD, BURN CD y navege en /ibuild/release/Mi.iso
Resolucion de problemas
editar
P: I'm at a >>> prompt. What do I do?
R: That's the python prompt. Hit ctrl-d.
P: obtengo el error, "chroot: apt-get: command not found"
R: This probably means chroot isn't working on your partition. To verify this, type:
#sudo chroot /ibuild/work/custom/source
You'll get a /bin/bash error. This means there is a corruption with your copy or extraction of ibuild. Try to extract it again.
P: I get a syntax error when I try to run: sudo intellibuild/manager.py config/config.xml
R: You need to specify python: sudo python intellibuild/manager.py config/config.xml
P: I get an error when one the patches fails (commonly bootsplash-theme).
R: Comment it out in the config.xml with:
P: Ayuda! Borre mi /dev y mi sistema no arranca! esta congelado el tiempo del relog...
R: no estas usando la version actual! que Vergüenza! Arranca un Morphix CD y cp -a /MorphixCD/dev to /mnt/hda1/dev. entonces chmod -R 766 /dev/pts y ptmx.
Conseguir Ayuda
editar
Hay varias maneras de conseguir ayuda:
IRC
editar
El servidor es irc.freenode.net
El Canal es #morphix
Mailing list:
editar
Direct email:
editar
Correccion en este Howto.
Kermit Jones - kermit (at) freelifeministries.org
Problemas con IntelliBuild:
Por favor use como último recurso : Jure Cuhalev - gandalf (at) owca.info
Traduccion al espanol
Rafael Ernesto Medina Contreras (REEMC) :
Registro
editar
6 - 6/16/2004 - Added quite a bit to "short version" and updated custom patching. Thanks to Aleksey for the input!
.5 - 6/09/2004 - Update to reflect iBuild .11. Fixed umount /dev entries.
.4 - 5/15/2004 - Big colorful boxes for warnings and notes. Changed email addresses and put in reminders for /dev.
.3 - 5/14/2004 - Corrected .desktop entry. Changed to reflest ibuild_0.9. Troubleshooting rm -rf /dev
.2 - 5/13/2004 - Added proper TOC. Copy and Paste Support added. Initial "Patches" section inserted.
.1 - 5/10/2004 - Original posting.