Este artículo se muestra en detalle cómo ejecutar el código base de Gaia, y qué herramienta están disponibles en esta configuración.
Para empezar, debemos señalar que NO tiene que compilar Gecko, o B2G, para contribuir con Gaia. Sólo tienes que descargar el código fuente de Gaia y tendrás la capacidad de ejecutarlo y editarlo.
Hay diferentes formas de ejecutar Gaia:
- Flashear tu teléfono con tu actualización Gaia.
- Iniciar tu Gaia dentro de B2G Desktop.
- Correr tu Gaia dentro del WebIDE.
- Iniciar Gaia dentro de nuestra herramienta de Firefox Mulet tool para correr Gaia en el Escritorio.
Puedes encontrar información concisa de como ejecutar Gaia de estas diferentes maneras desde esta página, junto con enlaces e información detallada. En general, estos se ordenan de lo más complejo (experiencia más realista), a lo más fácil (experiencia menos realista).
En este artículo vamos a concentrarnos en el funcionamiento de Gaia dentro de Firefox Mulet o en el WebIDE — para la mayoría de los cambios que hagas en el código base de Gaia, este mecanismo ofrece la forma más rapida de probar los cambios, pero obviamente hay algunas características (tales como probar las API del dispositivo o la interaccíon con el hardware del teléfono) no estarán disponibles, ya que necesitara un dispositivo real.
Nota: Para obtener más ayuda con Gaia, los mejores lugares son el canal #gaia (ver Mozilla IRC para más información) y la lista de correo dev-gaia.
Ejecutar tu construcción de Gaia
- Primero, hacer una bifurcación (fork) de el Repositorio de Gaia en Github.
- Después, clona tu bifurcación localmente:
git clone https://github.com/your-username/gaia.git
- Agrega tu producción (upstream) como esto:
cd gaia git remote add upstream https://github.com/mozilla-b2g/gaia
- Now you need to create a Gaia profile. Running
make
inside your repo folder creates a profile in theprofile
directory, which is setup for optimal debugging. It creates unpackaged (hosted versions) of the Gaia apps that can be served directly via the local HTTPD server bundled along with Firefox desktop as an extension. When you make a change you just need to refresh your browser window to see the result (as you'll see later), rather than having to rebuild the profile, repush it to the device, etc. This is really good for rapid CSS/JS/HTML hacking. - With your debug profile built, run it in Mulet or WebIDE, using the linked instructions.
Troobleshooting and known issues
Error: Python executable "python3" is v3.x, which is not supported by gyp.
On some Linux distributions (eg: Archlinux), the default python
is python3
. This makes npm
fail when running some commands (eg. when running tests). To fix it once and for all, you can run the following command:
npm config set python python2
You can look at this Stack Overflow page for other solutions.
Then you should delete your node_modules
directory and run the failed command again.
Please Install NodeJS -- (use aptitude on linux or homebrew on osx)
So, you get this error although you think you installed it. Chances are you're running Debian or another Debian-based distribution like Ubuntu. On these distributions, NodeJS is contained in the nodejs
package, and you can install the nodejs-legacy
package to set up everything correctly:
sudo aptitude install nodejs-legacy
If you have issues installing this package, maybe you're using Chris Lea's PPA for Node; please remove it before moving forward.