B2G/Transition Project
From MozillaWiki
< B2G
Transition Project (March - July 2016)
Contents
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
- Check the meta bug 1245091 for B2G build issues
Gaia Changes
- No longer built as mozApps (app://)
- Turn system UI into (chrome://) (reason?)
- 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
For the transition of the B2G architecture temporary transition branches were created:
After merging those changes back into the main mozilla-central repository they will become obsolete.
Building the Transition Branches
See MDN for build instructions.
How You Can Help
- Test the transition branch
- File bugs (meta bug for the transition work is bug 1252143)
- Fix bugs (see meta bug above)
- Help us fix failing tests, see meta bug 1252482 for testing/build related tasks.
- 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 on Discourse
- 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
Community Coordination
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 (general discussions) - in case of trouble, use: https://t.me/joinchat/AAAAAD52Sd-hlp2bX6ATDQ
Meetings
- 4-weekly Transition Project Meeting.
- 3rd meeting on the 19th of May.
- B2G Weekly Meeting for engineering status updates (was Gaia Weekly Meeting).
- Community Working Groups meetings: have a look at the Working Groups page
FAQ
See the frequently asked questions (and answers!). They can help you to have a better view of the project and getting started.
See Also
- Transition project announcement
- Gaia Meeting Notes from 1st March 2016
- Meeting notes from the community kickoff meeting
- Transition Project Community Kickoff Presentation
- Community Ownership Transition
- Update on Foxfooding Devices
- Smartphone Code Transition EPM tracking page
- Transition project Call for Contribution