B2G/Transition Project: Difference between revisions
< B2G
Jump to navigation
Jump to search
m (add telegram group) |
Benfrancis (talk | contribs) (Added build instructions) |
||
| Line 49: | Line 49: | ||
* Gecko: pine | * Gecko: pine | ||
* Gaia: [https://github.com/mozilla-b2g/gaia/tree/kanikani kanikani] | * Gaia: [https://github.com/mozilla-b2g/gaia/tree/kanikani kanikani] | ||
== Building the Transition Branches == | |||
To build the transition branches of B2G for an Aries (Sony Z3C) device: | |||
* Checkout B2G | |||
$ git clone https://github.com/mozilla-b2g/B2G.git B2G | |||
$ cd B2G | |||
* Checkout the pine branch of Gecko | |||
$ hg clone https://hg.mozilla.org/projects/pine/ pine | |||
* Configure B2G to use the kanikani branch of Gaia | |||
$ vim .repo/manifests/base.xml | |||
<project name="gaia" path="gaia" remote="mozillaorg" revision="kanikani" /> | |||
* Configure B2G to use the pine branch of Gecko | |||
$ vim .userconfig | |||
export B2G_DIR=${B2G_DIR:-$(cd $(dirname $0); pwd)} | |||
echo "B2G_DIR = ${B2G_DIR}" | |||
export GECKO_PATH=${B2G_DIR}/pine | |||
echo "GECKO_PATH = ${GECKO_PATH}" | |||
* Configure, build and flash B2G | |||
$ ./config.sh aries | |||
$ ./build.sh | |||
$ ./flash.sh | |||
'''Notes:''' | |||
* If you get an error about a mismatched base build at the build step you don't have the required existing version of Android/B2G on your device. You'll need to flash the version of Android specified by the build script or get hold of a backup-aries folder. | |||
* [https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Building See MDN] for more detailed build instructions for B2G in general. | |||
* If you have problems, try asking for help in #fxos on irc.mozilla.org or on the [https://lists.mozilla.org/listinfo/dev-fxos dev-fxos] mailing list. | |||
== How You Can Help == | == How You Can Help == | ||
Revision as of 14:33, 24 March 2016
Transition Project (March - July 2016)
Goals
- Modernise the B2G platform (replace legacy mozApps-only APIs with new web standards)
- Create a leaner platform on which to build Smart TV and other connected devices products (reduced complexity and maintenance cost)
- Move towards an architecture closer to that of the Firefox browser (just chrome and web content)
- Transition smartphone modules to new owners and peers in the community
- Build a more active open source community around the project
Gonk Changes
- APIs needed for TV will be maintained by staff on the TV team
- Smartphone-specific APIs will need to be maintained by the wider community
- Merge the B2G process model with the Firefox process model
Gecko Changes
- Replace mozApps with standard web apps (Service Workers, Manifest and Push)
- Find an alternative solution to legacy mozApps-only APIs
- IAC
- DataStore
- System Messages
- Web Activities
- Remove themes and langpacks and add support for Web Extensions
Gaia Changes
- No longer built as mozApps (app://)
- Turn system UI into chrome(chrome://)
- System app
- Home screen
- Search
- Keyboard
- Settings?
- Turn everything else into web content where possible (http://)
- Hosted on localhost
- Hosted on the web
Deliverables
Things we expect to be working in 3-5 months:
- System
- Homescreen
- TV Browser
- Media Apps
Things that might be broken:
- Everything else (we need your help!)
Transition Branches
- Gecko: pine
- Gaia: kanikani
Building the Transition Branches
To build the transition branches of B2G for an Aries (Sony Z3C) device:
- Checkout B2G
$ git clone https://github.com/mozilla-b2g/B2G.git B2G $ cd B2G
- Checkout the pine branch of Gecko
$ hg clone https://hg.mozilla.org/projects/pine/ pine
- Configure B2G to use the kanikani branch of Gaia
$ vim .repo/manifests/base.xml
<project name="gaia" path="gaia" remote="mozillaorg" revision="kanikani" />
- Configure B2G to use the pine branch of Gecko
$ vim .userconfig
export B2G_DIR=${B2G_DIR:-$(cd $(dirname $0); pwd)}
echo "B2G_DIR = ${B2G_DIR}"
export GECKO_PATH=${B2G_DIR}/pine
echo "GECKO_PATH = ${GECKO_PATH}"
- Configure, build and flash B2G
$ ./config.sh aries $ ./build.sh $ ./flash.sh
Notes:
- If you get an error about a mismatched base build at the build step you don't have the required existing version of Android/B2G on your device. You'll need to flash the version of Android specified by the build script or get hold of a backup-aries folder.
- See MDN for more detailed build instructions for B2G in general.
- If you have problems, try asking for help in #fxos on irc.mozilla.org or on the dev-fxos mailing list.
How You Can Help
- Test the transition branch
- File bugs (meta bug is bug 1252143)
- Fix bugs
- Help us fix failing tests
- Port a Gaia smartphone app
- Pick a smartphone app
- Figure out ways to get it working as a web app (or turn it into chrome)
- Report back your findings
- Help us maintain a device port
- (Eventually) propose/implement new smartphone features
Staff Contacts
- Gregor Wagner (Engineering Manager)
- Fabrice Desré (Architect)
Platform Engineering
- Gabriele Svelto
- Kan-Ru Chen
- Alexandre Lissy
- Thomas Zimmermann
Front End Engineering
- Ben Francis
- Chris Lord
- Alberto Pastor
Build & Test
- Dylan Oliver
- Ghislain Aus Lacroix
Security
- Paul Theriault (Security Manager)
- Frederik Braun
- Stephanie Ouillon
- Jonathan Kingston
QA
Module Ownership
- Current module owners and peers will continue to begin with
- Module ownership and peers will transition over time (particularly for smartphone pieces)
- Some modules may become orphaned and removed
Keeping in Touch
- Mailing list (dev-fxos)
- IRC (irc.mozilla.org #fxos)
- Discourse
- Telegram group: B2GOS (for general discussions)
Meetings
- 4-weekly Transition Project Meeting
- B2G Weekly Meeting for engineering status updates (was Gaia Weekly Meeting)
- Other meetings TBD...
