martes, 15 de septiembre de 2009

desarrollo de sugar en la pc

Para aquellos que desean participar en Ceibal Jam y desean armarse el entorno de desarrollo de sugar en su PC personal o simplemente quieren tener el entorno para usarlo, explico a continuación como se instala sugar sobre ubuntu 8.10. Obviamente todo el ejemplo se hace desde una terminal y con permisos de root.

Primero instalo git-core:

sudo apt-get install git-core

En el home de mi usuario, creo una carpeta que llamaré sugarsystem:

mkdir sugarsystem

Entro en esa carpeta:

cd sugarsystem

Ejecuto la siguiente linea para descargar la imagen de sugar:

git clone git://git.sugarlabs.org/sugar-jhbuild/mainline.git sugar-jhbuild

Luego de descargada la imagen entrar al directorio sugar-jhbuild:

cd sugar-jhbuild

Actualizamos el sistema y sus dependencias:

./sugar-jhbuild update

Durante el primer paso me da un error:

*** Checking out matchbox-window-manager *** [18/42]
*** error during phase checkout of matchbox-window-manager: svn not found *** [18/42]

me da 6 opciones:

[1] rerun phase checkout
[2] ignore error and continue to next module
[3] give up on module
[4] start shell
[5] reload configuration
[6] go to phase force_checkout

Elijo la 2 = ignorar y seguir

Durante el primer paso me da otro error:

*** Checking out matchbox-window-manager *** [18/42]
*** error during phase checkout of matchbox-window-manager: svn not found *** [18/42]

me da 6 opciones:

[1] rerun phase checkout
[2] ignore error and continue to next module
[3] give up on module
[4] start shell
[5] reload configuration
[6] go to phase force_checkout

Elijo la 2 = ignorar y seguir

Al terminar, ejecuto el chekeo de dependencias:

./sugar-jhbuild depscheck

Me mostrarás las bibliotecas faltantes que deberé instalar con synaptics (una por una :P).

Huy !!, son 450MB, lleva un rato.

Problemas:
libloudmouth1-dev (no quiere instalarse)
depende de libidn11-dev pero no va a ser instalado.
dependencias no resolubles. Asegurese de que todos los repositorios requeridos estan añadidos y activados en las preferncias.

No importa, seguimos adelante:

Luego ejecuto el constructor del sistema:

./sugar-jhbuild build

Se presentan algunos errores durante la construcción.

Soluciono problemas de dependencias invocando una instalación automática:

./sugar-jhbuild depscheck -s | sudo xargs aptitude -y install

Solucionando problemas de path para python:

sudo aptitude install chrpath

Y luego, todo en una linea:

find /usr/lib/python-support/python-gnome2/python2.5/gtk-2.0 /usr/lib/python-support/python-gconf/python2.5/gtk-2.0 -name "*.so" | sudo xargs chrpath -d

Listo, todo solucionado, a usar mi sugar en ubuntu.

Usar y Configurar mi Sugar:

Ejecuto sugar:

./sugar-jhbuild run

Para ejecutar mas de una instancia de sugar:

SUGAR_PROFILE=2 ./sugar-jhbuild run

Para ejecutar una actividad individual:

sugar-launch [nombredelaactividad]

Configurar la resolucion de ejecucion de sugar:

./sugar-jhbuild run sugar-emulator --fullscreen
./sugar-jhbuild run sugar-emulator --dimensions 1200x900

El tamaño predeterminado es de 800x600 en la actualidad el mínimo que debería funcionar sin problemas.
Es decir, actividades deben ser probados para trabajar en este modo (y en otros también).

Otros comandos:

JHBuild tiene varios otros comandos que pueden ser útiles para el desarrollo. Puedes ver la lista de comandos disponibles con:

./sugar-jhbuild --help-commands

Para actualizar sugar:

./sugar-jhbuild update
./sugar-jhbuild build
./sugar-jhbuild run

Realizar checkeo de dependencias:

./sugar-jhbuild depscheck

Combinaciones de teclas para el entorno:

* Alt + Shift + F Muestra y oculta el cuadro exterior del escritorio de sugar.
* Ctrl-Q Cierra una actividad.
* Alt + Mayúsculas + Q cierra Sugar.
* Alt + Mayús + O Abre el journal.
* Alt + Mayúsculas + R Rota la pantalla.

Para personalizar y configurar el acceso a los repositorios de sugar, editar el archivo Sugar.jhbuildrc:

repos['gnome.org'] = ':ext:marco@cvs.gnome.org:/cvs/gnome'
repos['mozilla.org'] = ':ext:marco%gnome.org@cvs.mozilla.org:/cvsroot'
repos['dev.laptop.org'] = 'git+ssh://marco@dev.laptop.org/git/'
repos['dev.laptop.org/projects'] = 'git+ssh://marco@dev.laptop.org/git/projects/'

Por si quieren leer, Manual de jhbuild: http://library.gnome.org/devel/jhbuild/unstable/

No hay comentarios:

Publicar un comentario