Manifest needed to help build LineageOS 17.1 for LG v30
- README.md -- The self explanatory file you read now.
- lg_v30-h930.xml -- Manifest for building from my source edits UNIFIED BUILD.
Ubuntu 20.04
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get install openjdk-11-jdk
sudo update-alternatives --config java
sudo apt-get install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-gtk3-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev python libncurses5 libtinfo5
This sets up correct udev rules in Ubuntu so the system can connect to Android devices via USB, ADB, Fastboot. Replace "username" with system username (Optional for build)
$ wget -S -O - http://source.android.com/source/51-android.rules | sed "s/<username>/$USER/" | sudo tee >/dev/null /etc/udev/rules.d/51-android.rules; sudo udevadm control --reload-rules
$ mkdir -p ~/bin
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
Create build directory and fetch the required LineageOS 17.1 source files. Make sure you replace the directory to the one you want to use for the source directory
$ mkdir -p ~/android/lineage
$ cd ~/android/lineage
$ repo init -u https://github.com/LineageOS/android.git -b lineage-17.1
Now add the LG v30 manifest. Pick whether or not to use the stable manifest or not. MAKE SURE TO USE THE CORRECT MANIFEST! H932 is a T-Mobile specific build. H930 is universal and will work for other LG v30.
$ mkdir -p ~/android/lineage/.repo/local_manifests
$ wget -S https://raw.githubusercontent.com/ShapeShifter499/LG_v30-LineageOS_Manifest/lineage-17.1/lg_v30-joan.xml -O ~/android/lineage/.repo/local_manifests/lg_v30-joan.xml
$ repo sync
Change some git variables so the build correctly identifies who you are, run the following at the root of source. (Optional)
$ git config --global user.name "Your Name"
$ git config --global user.email "Your Email"
$ source build/envsetup.sh
$ export USE_CCACHE=1
$ mkdir .ccache
$ export CCACHE_DIR=.ccache
$ ccache -M 50G
You can also enable the optional ccache compression. While this may involve a slight performance slowdown, it increases the number of files that fit in the cache. To enable also add this line (Optional)
$ export CCACHE_COMPRESS=1
export USE_CCACHE=1
export CCACHE_COMPRESS=1
$ watch -n1 -d ccache -s
Home builders that want to bake su back into the ROM can use the command ‘export WITH_SU=true’ prior to building.
$ mka clobber
Swap the next line for lineage_h932-userdebug if compiling for T-Mobile H932, otherwise all other devices use H930
$ lunch lineage_joan-userdebug $ mka bacon
$ mka bootimage