Skip to content

Build Guide

This guide will help you set up your build environment and compile LumineDroid for your device.

PREREQUISITE: BRINGUP

Before you can build LumineDroid, you must ensure your device tree is properly "brought up" and configured. If you haven't done this yet, please follow our Bringup Guide first.

Build Environment

To build LumineDroid, you will need a powerful machine with the following minimum requirements:

  • OS: Ubuntu 20.04 or newer (LTS recommended).
  • CPU: Quad-core or better (more cores = faster builds).
  • RAM: 16GB minimum (32GB+ highly recommended).
  • Storage: 300GB+ of free space (SSD recommended).

Setting Up the Environment

  1. Install Required Packages:

    bash
    sudo apt update
    sudo apt install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig
  2. Install Repo Tool:

    bash
    mkdir -p ~/bin
    curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
    chmod a+x ~/bin/repo
  3. Configure Git:

    bash
    git config --global user.email "your@email.com"
    git config --global user.name "Your Name"

Syncing Source

  1. Initialize Repository:

    bash
    mkdir luminedroid && cd luminedroid
    repo init -u https://github.com/LumineDroid/platform_manifest -b bellflower --git-lfs

    Tip: Add --depth=1 to save storage and bandwidth (shallow clone).

  2. Sync Source:

    bash
    repo sync -c --force-sync --optimized-fetch --no-tags --no-clone-bundle --prune -j$(nproc --all)

Starting the Build

  1. Set Up Environment:

    bash
    . build/envsetup.sh
  2. Lunch your device:

    bash
    lunch <device>-bp4a-userdebug
  3. Compile:

    bash
    mka bacon

Happy waiting for your build to finish! ☕

If you encounter any errors that seem related to the source code itself, please report them to our Official Telegram Group with the relevant logs.

Released under the GPL-3.0 License.