Get Started¶
PhoneLab use the same tools to manage platform source with AOSP, except that we are hosting our own platform mirror. Here we are not trying to cover every aspect of the building process, which is already well documented by AOSP.
Registration¶
First, you will need to register an account on our Gerrit server at http://platform.phone-lab.org:8080. You will need to use the OpenID authentication provided by Yahoo!, since Google has terminated its OpenID support.
Then please sign in and fill up your account information, most notably your SSH public key and email address. These two information are required later on to clone the platform source.
Finally, please open the email sent by Gerrit to confirm your email address, and let us know your Gerrit account name.
Downloading and Building¶
Please follow the AOSP instructions to set up your local develop environment.
Before you continue, make sure that you have contacted us with these information:
- Who you are
- What the experiment is about (be brief)
- What will be a good code name (it will be used in creating the experiment branch
experiment/cm-13.0/${id}/${codename}
, where${id}
is assigned by us.)- Your account name and email on our Gerrit server.
Next, you are ready to clone the source code.
$ repo init -u ssh://<USERNAME>@platform.phone-lab.org:29418/cm-shamu/manifest -b <EXPERIMENT_BRANCH>
$ repo sync
Where <USERNAME>
is your user name on our Gerrit server, and
<EXPERIMENT_BRANCH>
is the branch name we created for you.
Since repo sync
will put every repository in a “detached head” mode, you may
want to check out your experiment branch so further changes will be staged on
your branch:
$ repo forall -pvec git fetch phonelab <EXPERIMENT_BRANCH>:<EXPERIMENT_BRANCH>
Now you can go a head and build the platform. Note the build target is for Nexus 6, aka “shamu”.
$ source build/envsetup.sh
$ lunch cm_shamu
$ make -j 16
After the compilation finishes, you can use fastboot
to flash the images to
your device. Given that you are going to be modifying the platform we suggest
that you obtain a Google Nexus 6 smartphone
to use as a development device. Happily they are not terribly expensive.