B2G/Transition Project: Difference between revisions

From MozillaWiki
< B2G
Jump to navigation Jump to search
m (link for pine)
(→‎Meetings: Update the meetings list - temporary)
Line 140: Line 140:
== Meetings ==
== Meetings ==
* 4-weekly Transition Project Meeting.
* 4-weekly Transition Project Meeting.
* [https://wiki.mozilla.org/B2G#Meetings B2G Weekly Meeting] for engineering status updates (was Gaia Weekly Meeting)
* [https://wiki.mozilla.org/B2G#Meetings B2G Weekly Meeting] for engineering status updates (was Gaia Weekly Meeting).
* Other meetings TBD...
* Community Working Groups meetings are announced on (https://discourse.mozilla-community.org/c/firefox-os-participation/b2g-os-transition Discourse).


== See Also ==
== See Also ==

Revision as of 18:47, 26 April 2016

B2g wordmark.png

Transition Project (March - July 2016)

Goals

  1. Modernise the B2G platform (replace legacy mozApps-only APIs with new web standards)
  2. Create a leaner platform on which to build Smart TV and other connected devices products (reduced complexity and maintenance cost)
  3. Move towards an architecture closer to that of the Firefox browser (just chrome and web content)
  4. Transition smartphone modules to new owners and peers in the community
  5. 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
  • Remove themes and langpacks and add support for Web Extensions

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

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 for the device :
$ ./config.sh <device> 

ie device = flame-kk or aries

  • Configure B2G to use the kanikani branch of Gaia
$ vim .repo/manifests/base.xml
<project name="gaia" path="gaia" remote="mozillaorg" revision="kanikani" />
$ cd gaia
$ git reset --hard mozillaorg/kanikani
$ cd ..
  • 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
    • plug in your device that has the android base or firefox os base build
$ ./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
  • 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

Platform Engineering

Front End Engineering

Build & Test

Security

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

Meetings

See Also