Costa Rica/Tecnico/OSBuilder

From OLPC
Jump to: navigation, search

Debido a la diferencia de arquitecturas, se deben de utilizar OOSB (OLPC OS Builder) distintos para XOs 1.5 y 1.75:

Instalación del OS Builder en hardware x86

Pasos:
1- La instalación se realiza sobre el mismo servidor utilizado cómo MSS
2- Verificar que el sistema esté actualizado

[root@mss ~]# yum -y update

3- Instalar paquetes requeridos:

[root@mss ~]# yum -y install olpc-os-builder

4 - Reiniciar el servidor

[root@mss ~]# reboot

Instalación del OS Builder en hardware ARM

Pasos:

1- Instalar una imagen reciente estable (12.1.0) en una XO1.75
2- Bootear en Sugar y deshabilitar el manejo automático de energía desde el panel de control.
3- Insertar una tarjeta SD de 4GB
4- Preparar la tarjeta SD cómo swap. Desde una terminal y cómo root:

# Revisar en que bloque de dispositivo se encuentra la tarjeta externa:
mount 

# Desmontar la partición (de ser necesario):
umount /run/media/olpc/TARJETASD

# utilizar fdisk para eliminar la partición
# Crear una nueva partición en la tarjeta de tipo 82
fdisk /dev/mmcblk#

# Preparar la nueva partición cómo swap
# mkswap reportará un UUID. Anotarlo.
partprobe
mkswap /dev/mmcblk#p1
  
# Agregar la siguiente linea al fstab para montar el nuevo swap en cada reboot
UUID=<UUID reportado por mkswap> swap swap defaults 0 0

# habilitar todas las particiones swap del fstab
swapon -a -v

5- Conectar un disco duro externo y configurarlo cómo /var/tmp:

mount /dev/sda1 /var/tmp/

6- Instalar paquetes requeridos:

# vi /etc/rpm/macros.imgcreate
 %_excludedocs 1 ##Borrar esta línea
# yum -y install olpc-os-builder git gcc make zlib-devel

7- Descargar el módulo bios-crypto y compilarlo:

[root@mss ~]# cd /root
[root@mss ~]# git clone git://dev.laptop.org/bios-crypto
[root@mss ~]# cd bios-crypto/build
[root@mss ~]# make cli

8- Copiar las llaves de la Fundación al servidor:

[root@mss ~]# mkdir /root/masterkeys
[root@mss ~]# cp <cada llave publico/privada> /root/masterkeys/
  • Las llaves las mantiene el Director de Tecnología y el Director Ejecutivo de la Fundación.

Uso del OS Builder

El OOB (OLPC OS Builder) trabaja mediante un archivo de configuración .ini. En este archivo se encuentran las configuraciones de distintos módulos utilizados por el oosb para las distintas secciones que se quieran personalizar en la imágen que se va a crear. Para entender mejor el archivo se recomienda leer un .ini y revisar los comentarios del archivo.

¿Cómo generar una nueva imagen?

olpc-os-builder /ruta/al/archivo/.ini

¿Dónde se almacena la imagen creada?

/var/tmp/olpc-os-builder/output/

¿De todos los archivos que se crean, cuáles son necesarios para flashear una XO?
Dentro de la carpeta output se van a encontrar muchos archivos generados luego de la creación de una imagen. Se requieren 2 archivos para poder flashear una XO. El archivo que finaliza en .zd y el archivo que finaliza en .zip
Dependiendo de la imágen creada el .zip se llamará fs1.zip para las XO1.5 o fs2.zip para las XO1.75. En caso de que el archivo tenga un nombre mayor (Ejemplo: 2175xx2.zd.zsp.fs2.zip) se debe de renombrar eliminando la primer parte del nombre.

Configuración actual

Archivos .ini y configuración asociada para cada modelo de XO que maneja la fundación.

XO1.5

Archivo .ini:
FQT2013 xo1.5

Configuración necesaria

1- Crear la carpeta scripts

mkdir /root/scripts

2- Descargar el .ini en esta carpeta

cd /root/scripts
wget fqt.cr/fqt2013_xo1.5.ini

3- Crear la carpeta para las actividades

mkdir /root/scripts/activities

4- En una XO1.5 con la imagen 12.0.1 de OLPC, descargar las siguientes actividades, pasarlas a una llave USB, y copiarlas dentro de esta carpeta:

abacus-47.xo     i_know_america-7.xo  paint-43.xo      tamtamjam-66.xo
browse-140.xo    image_viewer-21.xo   physics-10.xo    tamtammini-66.xo
calculate-40.xo  implode-12.xo        portfolio-37.xo  terminal-41.xo
chat-78.xo       labyrinth-14.xo      read-99.xo       turtleblocks-172.xo
clock-12.xo      log-29.xo            record-97.xo     tux_paint-6.xo
distance-34.xo   maze-22.xo           ruler-27.xo      typing_turtle-29.xo
fototoon-13.xo   measure-44.xo        Scratch-23.xo    write-79.xo
gcompris-18.xo   memorize-43.xo       speak-44.xo
geogebra-6.xo    ooo4kids-3.xo        stopwatch-18.xo

5- Crear una carpeta para el homepage inicial de Browse (Navegar)

mkdir /root/scripts/custom-library

6- Descargar el archivo del homepage

cd /root/scripts/custom-library
wget fqt.cr/library_homepage.tmpl

7- Crear una carpeta para el repositorio local

mkdir /root/scripts/localrepo

8- Instalar herramientas necesarias

yum -y install createrepo yum-utils

9- Descargar los rpms necesarios

cd /root/scripts/localrepo
yumdownloader --resolve libXScrnSaver pciutils pciutils-libs qt qt-mobility qt-settings qtwebkit qt-x11 
wget fqt.cr/skype-4.1.0.20-fedora.i586.rpm

10- Crear la base de datos del repositorio local

cd /root/scripts
createrepo localrepo

11- Descargar imagen inicial de booteo y script de filtro de contenido web

wget fqt.cr/boot.png
wget fqt.cr/install-000-override-nameserver.sh

12- Crear una imágen de prueba y verificar que todo esté funcionando correctamente.

olpc-os-builder fqt2013_xo1.5.ini

XO1.75

Archivo .ini:
FQT2013 xo1.75

Configuración necesaria

1- Crear la carpeta scripts

mkdir /root/scripts

2- Descargar el .ini en esta carpeta

cd /root/scripts
wget fqt.cr/fqt2013_xo1.75.ini

3- Crear la carpeta para las actividades

mkdir /root/scripts/activities

4- En una XO1.75 con la imagen 12.0.1 de OLPC, descargar las siguientes actividades, pasarlas a una llave USB, y copiarlas dentro de esta carpeta:

i_know_america-7.xo  paint-43.xo      tamtamjam-66.xo  stopwatch-18.xo
browse-140.xo    image_viewer-21.xo   physics-10.xo    tamtammini-66.xo
calculate-40.xo  implode-12.xo        portfolio-37.xo  terminal-41.xo
chat-78.xo       labyrinth-14.xo      read-99.xo       turtleblocks-172.xo
clock-12.xo      log-29.xo            record-97.xo     distance-34.xo
maze-22.xo       ruler-27.xo          speak-44.xo      write-79.xo
fototoon-13.xo   measure-44.xo        Scratch-23.xo    
memorize-43.xo   typing_turtle-29.xo

5- Crear una carpeta para el homepage inicial de Browse (Navegar)

mkdir /root/scripts/custom-library

6- Descargar el archivo del homepage

cd /root/scripts/custom-library
wget fqt.cr/library_homepage.tmpl

7- Crear una carpeta para el repositorio local

mkdir /root/scripts/localrepo

8- Instalar herramientas necesarias

yum -y install createrepo yum-utils
su -c 'yum -y localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-17.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-17.noarch.rpm'
cd /etc/yum.repos.d/ 
wget fqt.cr/vmeta-fusion.repo

9- Descargar los rpms necesarios

cd /root/scripts/localrepo
yumdownloader --resolve a52dec libmms faad2 libmpeg2 faad2 libquicktime ffmpeg libquicktime-utils ffmpeg-libs librtmp glib libsidplay gpac libva gpac-doc libvmeta-marvell gpac-libs mesa-dri-drivers gstreamer-ffmpeg mesa-dri-filesystem gstreamer-plugins-bad mjpegtools-libs gstreamer-plugins-good mpeg2dec gstreamer-plugins-marvell openal-soft gstreamer-plugins-ugly opencore-amr gtk+ kernel rtmpdump lame twolame lame-libs twolame-libs lame-mp3x x264 libdca x264-libs libdca-tools xmms-faad2 libebml xmms-libs libgfx-marvell xorg-x11-drv-dove libmad xvidcore libmatroska y4mscaler  libmimic

10- Crear la base de datos del repositorio local

cd /root/scripts
createrepo localrepo

11- Descargar imagen inicial de booteo, el script de filtro de contenido web, script para flash, y el script para vmeta

wget fqt.cr/boot.png
wget fqt.cr/install-000-override-nameserver.sh
wget fqt.cr/flash.sh
wget fqt.cr/libflashplayer-f17.so
wget fqt.cr/vmeta.sh

12- Crear una imágen de prueba y verificar que todo esté funcionando correctamente.

olpc-os-builder fqt2013_xo1.75.ini