Dieser Artikel beschreibt im Detail die lokale Durchführung der Gaia Codebase und welche Werkzeuge in diesem Setup verfügbar sind.
Zuerst sei erwähnt, dass Du NICHT Gecko oder B2G erstellen musst, um zu Gaia beizutragen. Du musst lediglich den Gaia Quellcode herunterladen und die Möglichkeit haben, diesen auszuführen und zu editieren.
Es gibt verschiedene Möglichkeiten, Gaia auszuführen:
- Flashe Dein Smartphone mit der aktuellen Gaia Version.
- Starte Gaia innerhalb einer B2G Desktop Version.
- Führe Gaia innerhalb von WebIDE aus.
- Starte Gaia innerhalb Deines Firefox Mulet Tools aus, um Gaia auf dem Desktop auszuführen.
Du findest auf der Different ways to run Gaia Seite kurzgefasste Informationen über jede der genannten Möglichkeiten, zusammen mit Links zu detailierten Beschreibungen - je nach Bedarf. Generell sind diese nach Komplexität geordnet, absteigend von der komplexesten zur einfachsten (aber unwahrscheinlichsten) Methode.
In diesem Artikel konzentrieren wir uns auf das Ausführen von Gaia innerhalb von Firefox Mulet oder in WebIDE. Für die meisten Änderungen, die Du in der Gaia Codebase machen möchtest, bietet dies den schnellsten Mechanismus, Updates zu testen aber offensichtlich gibt es einige Funktionen (z. B. das Testen von Geräte-APIs oder Interaktion mit der Smartphone Hardware ), für die ein physisches Gerät benötigt wird.
Info: Um weitere Hilfe zu Gaia zu bekommen, der beste Platz ist der #gaia IRC Channel (siehe auch Mozilla IRC für weitere Informationen hierzu) und die dev-gaia mailing list.
Ausführen der eigenen Gaia Version
- Erstelle zuerst eine Verzweigung von der Gaia repo on Github.
- Als nächstes, klone Deine Verzweigung lokal:
git clone https://github.com/your-username/gaia.git
- Füge den Upstream wie folgt hinzu:
cd gaia git remote add upstream https://github.com/mozilla-b2g/gaia
- Nun musst Du ein Gaia Profil anlegen. Führe
make
innerhalb Deines repo Ordners aus, um ein Profil in derprofile
Directory anzulegen, die für optimales Debugging konfiguriert ist. Dies erzeugt ungepackte (hosted) Versionen der Gaia Apps, welche dazu fungieren, gebündelt und direkt über den lokalen HTTPD Server -zusammen als Erweiterung für Firefox Desktop- übertragen zu werden. Wenn Du Änderungen gemacht hast, musst Du nur Dein Browser Fenster aktualisieren, um das Ergebnis zu sehen (wie Du es später sehen wirst), statt Dein Profil erneuern zu müssen, erneut auf das Gerät übertragen u.s.w..
Dies ist sehr gut für schnelles CSS/JS/HTML Hacking. - Mit Deinem angelegten Debug Profil, führe es in Mulet or WebIDE aus, mithilfe der Anleitungen hinter den Links.
Troubleshooting und bekannte Probleme
Error: Python executable "python3" is v3.x, which is not supported by gyp.
In manchen Linux Versionen (eg: Archlinux), ist python3
der Standard python
. Dadurch scheitert npm
beim Ausführen mancher Befehle (z B. beim Testen). Um dies permanent zu beheben, führe folgenden Befehl aus:
npm config set python python2
Weiter Lösungen findest Du auch auf dieser Seite: Stack Overflow page.
Danach solltest Du Deine node_modules
Directory löschen und den gescheiterten Befehl erneut ausführen.
Please Install NodeJS -- (use aptitude on linux or homebrew on osx)
Nun bekommst Du diesen Fehler obwohl Du NodeJS installiert hast. Möglicherweise benutzt Du Debian oder andere Debian-basierende Versionen wie zum Beispiel Ubuntu. Bei diesen Versionen ist NodeJS im nodejs
Paket und Du kannst das nodejs-legacy
Paket folgendermaßen installieren, um alles korrekt aufzusetzen:
sudo aptitude install nodejs-legacy
Solltest Du bei der Installation des Paketes Probleme haben, benutzt Du eventuell Chris Lea's PPA for Node; bitte entferne diese bevor Du weitermachst.