This is an experimental project, aiming at providing a web based environment for phones and other devices. The main goals are to:
- Build an alternative to current dominant mobile OSes and browsers.
- Encourage contributions to Servo outside of the mandate of its corporate backers.
- Scratch an itch and have fun.
It currently runs on Gonk based devices and on desktop platforms (tested on Linux only so far, let me know if you get it to run on Windows or Mac). Another potential target will be the Librem 5 from Purism. For more information on target devices and platforms see this page.
It is in very early stages and not really usable yet. There is an incomplete todo list if you want to help!
You can check the build tutorial for a detailed explanation of how to build and run B2G/Servonk.
Since we depend on Servo, first check that you have everything set up as explained.
You need to do a b2g build for your device (eng or userdebug to get root access), as this is not properly setup with the Android build system yet. It is only necessary to build gonk, not gecko or gaia. A simple way to remove these from the build after running ./config.sh is to edit b2g.mk in gonk-misc repository and comment out the gecko and gaia lines, as shown in this git diff: https://pastebin.com/sdQG3Tki
- sudo apt install llvm-dev libclang-dev and clang (Ubuntu 18.04).
- First, install rustup.
- Git clone this repository.
- cd to the 'servonk' directory.
- Then run
./bootstrap.shto install the Rust toolchain.
- For Gonk builds only: configure the build by setting the
GONK_DIRenvironment variable to the path of your b2g repository, and the
GONK_PRODUCT_NAMEto the Android product name (eg. "aries" for a Sony Z3C).
- You can then build for the platform of your choice by running:
./servonk build gonk --releasefor a Gonk build, or
./servonk build glutin --releasefor a desktop version.
On desktop, just run
./servonk run glutin. On Gonk, you first need to flash your device with B2G before running:
./servonk flash gonk
./servonk run gonk
The lockscreen code is 4242.
- The L port of the Sony Z3C and Nexus 5 are currently the only tested and working devices.