{% hint style="info" %} We also offer Android-Generic Project 2.0 as an easy to learn method of building Android 11 for PC's. Checkout the project README.md for more info. {% endhint %}
Download the BlissRoms source code, based on AOSP, phhusson & BlissRoms
Please read the AOSP building instructions before proceeding.
What you need to build BlissOS
Latest Ubuntu LTS Releases https://www.ubuntu.com/download/server
Decent CPU (Dual Core or better for a faster performance)
8GB RAM (16GB for Virtual Machine)
250GB Hard Drive (about 170GB for the Repo and then building space needed)
Installing Java 8
sudo add-apt-repository ppa:openjdk/ppa
sudo apt-get update && upgrade
sudo apt-get install openjdk-8-jdk
update-alternatives --config java (make sure Java 8 is selected)
update-alternatives --config javac (make sure Java 8 is selected)
reboot
$ sudo apt-get install git-core gnupg flex bison maven gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip squashfs-tools python-mako libssl-dev ninja-build lunzip syslinux syslinux-utils gettext genisoimage gettext bc xorriso libncurses5 xmlstarlet build-essential git imagemagick lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libxml2 lzop pngcrush rsync schedtool python-enum34 python3-mako libelf-dev
If you plan on building the kernel with the NO_KERNEL_CROSS_COMPILE flag, you will need to also have gcc-10+ installed:
$ sudo apt-get install gcc-10 g++-10
Repo initialization :
## Releases Repo ##
$ repo init -u https://github.com/BlissRoms-x86/manifest.git -b r11-r36
sync repo :
$ repo sync -c --force-sync --no-tags --no-clone-bundle -j$(nproc --all) --optimized-fetch --prune
NO_KERNEL_CROSS_COMPILE - For some kernels, we use gcc-10 to compile. And some setups will require this flag to be added to compile the kernel properly.
BLISS_BUILD_VARIANT - (vanilla, gapps, foss) - We currently use this to specify what type of extra apps and services to iunclude in the build.
$ . build/envsetup.sh
$ lunch android_x86_64-userdebug
$ export NO_KERNEL_CROSS_COMPILE=true
$ export BLISS_BUILD_VARIANT=foss
$ mka iso_img
For many cases, we do offer a number of "extras" that can be compiled into the builds :
libndk-translation - This is the ARM/ARM64 native-bridge we use in our builds. It will require some setup to include. See the project readme. - https://gitlab.com/android-generic/android_vendor_google_emu-x86
gapps - USE_EMU_GAPPS=true (combine with BLISS_BUILD_VARIANT=gapps) - from Googles emulator images - Also included in https://gitlab.com/android-generic/android_vendor_google_emu-x86
houdini - This is another ARM/ARM64 native-bridge we can use in our builds. It will require some setup to include. See the project readme. - https://github.com/BlissRoms-x86/android_vendor_google_chromeos-x86
Gearlock - This is the recovery of choice for Android-x86 based builds. To include in builds: git clone https://github.com/axonasif/gearlock vendor/gearlock
Boringdroid - We include the needed commits for all Boringdroid addons in Bliss. To include those into the builds: git clone https://github.com/boringdroid/vendor_boringdroid vendor/boringdroid && git clone https://github.com/boringdroid/vendor_prebuilts_bdapps vendor/prebuilts/bdapps
rusty-magisk - (INCLUDED) This is how we are adding Magisk as superuser in our builds. - https://github.com/axonasif/rusty-magisk