Antes de construir B2G, necesitas clonar el repositorio y configurar tu binario. Este artículo te explica cómo.
Cómo clonar el repositorio de B2G
El primer paso antes de empezar a construir tu primer binario es clonar el repositorio de B2G. Esto no lo bajará todo: bajará solamente el "build system" de B2G y las utilidades de configuración. La mayoría del código de B2G está en el repositorio general Mercurial de Mozilla.
Para clonar el repositorio, usa git:
git clone git://github.com/mozilla-b2g/B2G.git
Tras clonarlo (lo que debería tardar sólo un momento), cd
al directorio de B2G:
cd B2G
Cómo copiar la estructura de B2G a otro ordenador
Si tienes un ordenador nuevo (¡vaya suerte!), tu vida será mucho más fácil si simplemente migras la estructura completa de B2G de un ordenador al otro.
Para ello, monta el disco duro de tu ordenador viejo en el nuevo, y haz:
rsync -a source/ dest/
Donde source
es la ruta completa (incluida la barra oblicua del final) a la estructura del código, y dest
es el destino al que la quieres mover (la barra oblicua del final también es importante en este caso).
Atención: Si copias los archivos de un ordenador con un sistema operativo diferente asegúrate de ejecutar './build.sh clean' antes de empezar el proceso de construcción. Si no, puedes causar problemas de compilación.
Si sigues estas instrucciones, puedes saltarte el resto de este artículo e ir directamente a la página de construcción.
Cómo configurar B2G en tu móvil
Una vez tengas el "build system" de B2G, necesitas configurarlo para el móvil en el que lo vas a instalar. Para ver una lista de aparatos compatibles, puedes utilizar la herramienta config.sh
:
./config.sh
Este comando te muestra una lista de aparatos compatibles. Por ejemplo:
Usage: ./config.sh [-cdflnq] (device name) Flags are passed through to |./repo sync|. Valid devices to configure are: - galaxy-s2 - galaxy-nexus - nexus-4 - nexus-4-kk - nexus-5 - nexus-5-l - nexus-s - nexus-s-4g - flo (Nexus 7 2013) - otoro - unagi - inari - keon - peak - hamachi - helix - tarako - dolphin - dolphin-512 - pandaboard - vixen - flatfish - flame - flame-kk - flame-l - rpi (Revision B) - emulator - emulator-jb - emulator-kk - emulator-l - emulator-x86 - emulator-x86-jb - emulator-x86-kk - emulator-x86-l > Sony Xperia devices - aries (Z3 Compact KK) - aries-l (Z3 Compact L) - leo-kk (Z3 KK) - leo-l (Z3 L) - scorpion-l (Z3 Tablet Compact L) - sirius-l (Z2 L) - tianchi-l (T2U L) - flamingo-l (E3 L)
Si tu aparato no está en la lista, no continúes: ayúdanos a hacer B2G compatible con tu aparato o espera a que alguien lo haga. ¡Pero siempre es mejor que seas tú el que nos ayudes!
Cómo configurar un teléfono móvil
Primero conecta tu móvil: el proceso de configuración necesita acceder al teléfono.
Si tu teléfono aparece en la lista de aparatos compatibles, puedes empezar el proceso de configuración ejecutando config.sh
otra vez, pero ahora incluyendo el nombre del aparato. Por ejemplo, para construir para el Samsung Google Nexus S, escribirías:
./config.sh nexus-s
Al principio de la configuración es posible que tengas que configurar la opción de uso del color, tras lo cual el proceso continúa. Éste es un buen momento para tomarse un descanso, ya que es ahora cuando te estás descargando por primera vez todo el código necesario para construir B2G.
Si tu teléfono ya no tiene Android y tu estructura de B2G no tiene los bloques binarios, pero has hecho una copia de seguridad de la partición /system
tal y como te recomendó el artículo Prerrequisitos para construir Firefox OS, puedes utilizar dicha copia de seguridad haciendo:
ANDROIDFS_DIR=<absolute path to parent dir of system dir> ./config.sh <target>
Configuración para construir un emulador
Si quieres construir uno de los emuladores, especifica "emulator" para construir la versión ARM, o "emulator-x86" para construir la versión x86. La versión x86 es más rápida, pero su simulación de dispositivos móviles es menos fiel a la realidad.
Por ejemplo, para construir el emulador ARM, escribirías lo siguiente:
./config.sh emulator
Al principio de la configuración es posible que tengas que configurar la opción de uso del color, tras lo cual el proceso continúa. Éste es un buen momento para tomarse un descanso, ya que es ahora cuando te estás descargando por primera vez todo el código necesario para construir B2G.
Atención: ./config.sh puede llevar más tiempo y consumir más recursos de red de lo que esperabas. Puedes parar el proceso haciendo Ctrl-C y reiniciarlo más tarde. Si sospechas que parte del proceso fue interrumpido antes de terminar, ejecuta './repo sync' para reparar cualquier posible error.
Cómo construir una versión específica de Gecko
Algunas veces querrás o necesitarás construir B2G basado en una versión de Gecko distinta de la que se usa por defecto (la que se especifica en el manifiesto). Puedes hacerlo editando el archivo.userconfig
antes de hacer "pull" en el repositorio (es decir, antes de ejecutar config.sh
). Por ejemplo, si quieres construir basándote en mozilla-central:
GECKO_PATH=/path/to/mozilla-central GECKO_OBJDIR=/path/to/mozilla-central/objdir-gonk
Atención: si construyes para otra versión de Gecko en Mac OS X, el directorio mozilla-central tiene que estar en un sistema de archivos sensible a las mayúsculas.
Lee Personalización del archivo .userconfig para más información sobre adaptaciones que puedes hacer.
Próximo paso: empieza a construir.