Firefox OS/TCP/Patching: Difference between revisions
Line 19: | Line 19: | ||
# <p>Flash whole images</p><p><code>$./flash.sh</code></p> | # <p>Flash whole images</p><p><code>$./flash.sh</code></p> | ||
# <p>Flash gecko only</p><p><code>$./flash.sh gecko</code></p> | # <p>Flash gecko only</p><p><code>$./flash.sh gecko</code></p> | ||
# <p>Flash gaia only</p><p><code>$./flash.sh gaia</code></p> | # <p>Flash gaia only</p><p><code>$./flash.sh gaia</code></p> | ||
== WIP bug list == | == WIP bug list == | ||
<p>Bug 961563 - [TABLET] Support specifying target device type in Gaia build script</p><p>Bug 965145 - [Camera] refactor .sensorAngle patch in bug 947956 for new camera app</p><p>Bug 983013 - Flatfish can't be build in OSX 10.9 (Mavericks)</p> | <p>Bug 961563 - [TABLET] Support specifying target device type in Gaia build script</p><p>Bug 965145 - [Camera] refactor .sensorAngle patch in bug 947956 for new camera app</p><p>Bug 983013 - Flatfish can't be build in OSX 10.9 (Mavericks)</p> | ||
== FAQ == | == FAQ == | ||
<p>To be continue | <p>To be continue |
Revision as of 18:27, 2 April 2014
Developing for the Tablet
The primary Firefox OS build documenation, including pre-requisites, set-up, building, flashing, and FAQs are all available at https://developer.mozilla.org/en-US/Firefox_OS/Building_and_installing_Firefox_OS
This is meant to be a quick reference guide specific to the Tablet Contribution Program and the first tablet device which is named in the project as "flatfish".
Preparation
Your developing PC and target platform should have android-ready base before you start a b2g/firefox os build. The following instructions of this document are all verified on Ubuntu 12.04. For Mac OS, we are working in progress.
AOSP environment
Firefox OS (B2G) environment
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_build_prerequisites
Create an account in github
Download B2G and AOSP source codes of flatfish
git clone b2g scripts and config files
$git clone git://github.com/mozilla-b2g/B2G.git -b master b2g_flatfish
configure flatfish and repo sync aosp and b2g source codes
$cd b2g_flatfish
$./config.sh flatfish
You have to wait for a long while to download the source codes depending on the network bandwidth.
Start to build flatfish
Connect flatfish device for extract necessary files at first build
The first build will pull necessary files into backup-flatfish which is automatic created by extract-files.sh. You DO NOT need to connect flatfish device if backup-flatfish is created.
How to build whole B2G
For flatfish, we need some prefix to support tablet distribution and enable some functions. GAIA_DISTRIBUTION_DIR=distribution_tablet is used for supporting tablet distribution of gaia. B2G_SYSTEM_APPS=1 is for moving webapp from /data to /system, and B2G_UPDATER=1 is enable OTA.
$GAIA_DISTRIBUTION_DIR=distribution_tablet B2G_SYSTEM_APPS=1 B2G_UPDATER=1 ./build.sh
Building whole system might take a long time, you can take a rest or try to build gecko/gaia if you just modify gecko/gaia.
How to build Gecko or Gaia only
Gecko only
$B2G_UPDATER=1 ./build.sh gecko
Gaia only
$GAIA_DISTRIBUTION_DIR=distribution_tablet B2G_SYSTEM_APPS=1 ./build.sh gaia
Flash the images you build
Please make sure adb can connect to your device successfully before flash images. You can do simple test to check adb connection, you will see something like “FLATFISH_123456 device” after typo “adb devices” if adb connection successfully.
Flash whole images
$./flash.sh
Flash gecko only
$./flash.sh gecko
Flash gaia only
$./flash.sh gaia
WIP bug list
Bug 961563 - [TABLET] Support specifying target device type in Gaia build script
Bug 965145 - [Camera] refactor .sensorAngle patch in bug 947956 for new camera app
Bug 983013 - Flatfish can't be build in OSX 10.9 (Mavericks)
FAQ
To be continue