How to submit a new device for official builds

Official devices

If you have a working device tree/kernel, and would like to submit it for official builds, please check this url for more instructions. Please note - your device must have full hardware support (i.e., every peripheral works) and must be stable.

The PixelExperience wiki provides instructions based on the assumption that your device has got its device tree and required depedencies under the PixelExperience-Devices GitHub organization.

Setting up the wiki locally

See this url for detailed instructions on setting up the wiki locally.

Adding your device

Prepare the required files

There are a few files which need to be there to have a device on the wiki. In order to get them, navigate to ~/wiki/ and run:

./scripts/generate_device.sh your_device

Obviously replace your_device with the codename of your device

Populating the YAML

The sample template has been copied to ~/wiki/_data/devices/your_device.yml.

Update the values to match your device. An explanation of some of the options is below.

Some of the properties allow specifying different values for multiple models being covered in the same file. In that case the format stays the same as for a single device, but is used in a Key-Value style like this:

property:
- Model1: Value
- Model2: Value

An example using the battery property: Just one device:

battery: {removable: False, capacity: 1000, tech: 'Li-Ion'}

vs. two different models:

battery:
- Model1: {removable: False, capacity: 1000, tech: 'Li-Ion'}
- Model2: {removable: True, capacity: 2000, tech: 'Li-Po'}

The following list will mention Model-Value pairs where applicable.

List of properties

List of optional properties

There are some optional properties which you might not need, but in case you do, they are documented below:

Testing it works

Start the wiki on your local Jekyll server, and navigate to the devices list. Your device should be there. Click on it, and check that the info/install/build pages all seem correct.

Now run the validation:

bundle install
ruby ./test/validate.rb

If the script doesn’t give you an output, all the validated fields have a proper format. Otherwise, read the messages carefully to see which fields have to be corrected.

Submitting wiki changes

After verifying the device-specific pages, commit it and open a pull request at wiki source code to review proposed changes.