FxOSBuilds cli is a tool made on node.js to update production devices
Shallow-flash Gecko and Gaia on Firefox OS devices from Mozilla's public build server with just one command.
- Downloads build, matched by
device
,channel
anddate
, from http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/ - Flash Gecko and Gaia, a so called shallow flash)
+-------=---+
| Gaia | ] ]
| ------- | ]- Shallow flash ]
| Gecko | ] ]- Base image flash
| ------- | ]
| Gonk | ]
| |
|-----------|
| ⊙ |
+-----------+
Firefox OS has three layers, where most development happens in the Gecko
(browser engine) and Gaia
(user interface) layers. Gonk
and lower contain proprietary bits like hardware drivers and RIL and are therefor not build by Mozilla.
Please read this questions before use the tool or submit an issue.
TBD
TBD
TBD
- Node 10.x
- ADB from the Android SDK
Use the fxosbuilds
command as global NPM command:
> npm install -g fxosbuilds
> fxosbuilds --help
CLI tool for FxOSBuilds updates.
Usage: fxosbuilds [device] [version=central]
Examples:
fxosbuilds zte-open 2.0 Flash a ZTE Open with 2.0 build.
fxosbuilds alcatel-one-touch-fire --folder ~/ Flash an Alcatel One Touch Fire with a nightly build (downloaded to ~/)
fxosbuilds zte-open --folder ~/ --local Flash a ZTE Open device with a previously downloaded build in ~/.
Options:
--device, -i Device (zte-open, alcatel-one-touch-fire)
--version, -c Version (central, aurora, 1.4, …) [default: "2.0"]
--date, -t Build date (for regression window testing) [default: "latest"]
--dir, -d Directory to keep downloads (defaults to temp)
--local, -l Use local files, skipping FTP (requires --dir)
--profile, -p Keep profile (no promises)
--remotify, -r Set device into development mode
--only-remotify Skip flashing, only set development mode
--help, -h Show this help
Making life easy for developers (read: not for consumers!). This does not enable remote debugging but also all the little hidden preferences that make development easier, like disabling lockscreen (which would prevent remote debugging) or the remote debugging prompt.
Preferences:
'devtools.debugger.forbid-certified-apps': false
Enable debugging for certified apps'devtools.debugger.prompt-connection': false
Disable prompt for remote debugging'b2g.adb.timeout': 0
Disable remote debugging timeout, (bug 874484)'layout.css.report_errors': false
Disable CSS errors in logcat
Settings:
'developer.menu.enabled': true
'ftu.manifestURL': null
Disable First-Time-User experience'debugger.remote-mode': 'adb-devtools'
Enable full remote debugging'screen.timeout': 600
10min screen timeout'lockscreen.locked': false
Unlock screen on launch'lockscreen.enabled': false
Disable lockscreen
This tool is based on Harald Kirschner work done on flash-b2g. Thanks so much for all you work making that tool. All the credits and eforts goes to you, we only change a few things to adapt it to our needs.