1
0
mirror of https://github.com/stucki/docker-lineageos synced 2024-12-19 17:12:29 -05:00
Go to file
2017-01-03 21:32:46 +01:00
.dockerignore Update .dockerignore 2016-01-22 14:07:29 +01:00
.gitignore Add ccache to .gitignore 2014-07-19 13:40:24 +02:00
android-env-vars.sh Rename user "cmbuild" to "build" 2017-01-03 19:15:12 +01:00
bash_completion add android completion 2016-03-31 22:03:20 +02:00
CHANGELOG.md Adjust LineageOS version to cm-14.1 2017-01-03 21:32:46 +01:00
Dockerfile Change all references of "CyanogenMod" to "LineageOS" 2017-01-03 21:32:06 +01:00
README.md Adjust LineageOS version to cm-14.1 2017-01-03 21:32:46 +01:00
run.sh Adjust LineageOS version to cm-14.1 2017-01-03 21:32:46 +01:00
startup.sh Rename user "cmbuild" to "build" 2017-01-03 19:15:12 +01:00

docker-lineageos

Create a Docker based environment to build LineageOS.

This Dockerfile will create a docker container which is based on Ubuntu 14.04. It will install the "repo" utility and any other build dependencies which are required to compile LineageOS (formerly known as CyanogenMod).

The main working directory is a shared folder on the host system, so the Docker container can be removed at any time.

NOTE: Remember that LineageOS is a huge project. It will consume a large amount of disk space (~80 GB) and it can easily take hours to build.

How to run/build

NOTES:

  • You will need to install Docker to proceed!
  • If an image does not exist, docker build is executed first
git clone https://github.com/stucki/docker-lineageos.git
cd docker-lineageos
./run.sh

The run.sh script accepts the following switches:

  • -u|--enable-usb - runs the container in privileged mode (this way you can use adb right from the container)
  • -r|--rebuild - force rebuild the image from scratch

The container uses "screen" to run the shell. This means that you will be able to open additional shells using screen keyboard shortcuts.

How to build LineageOS for your device

repo init -u git://github.com/lineageos/android.git -b cm-14.1
repo sync
source build/envsetup.sh
breakfast <device codename>   # example: breakfast grouper
brunch <device codename>      # example: brunch grouper

For further information, check the following links:

More information

==================