[Nokia 6.1/6.1+/6.2/7/7+/7.1/7.2 Cross Device Devel] Sid127:
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/

What is Ubuntu Touch?

Ubuntu Touch is the touch-friendly mobile version of Ubuntu.

This operating system is developed and maintained by UBports: An international community of passionate volunteers.

This means Ubuntu Touch is 100% community driven and independent.

What is Halium?

Halium is the collaborative project to unify the Hardware Abstraction Layer for projects which run GNU/Linux on mobile devices with pre-installed Android.

How it is a GSI?

First of all, I should mention ubports GSI definition is different from android, but both are generic.

ubports root file system was always generic and works for most cases, but devs were porting halium system image to add device-specific (HALs and configs) support to ubports Android container.

But after project treble which introduced in android 8, all device-specific parts of android system image moved to vendor partition and we can use "Generic system images" over one vendor partition.

In halium version 9, we use this adventure and have a totally generic system image + root file system.

Requirements:

The only Requirement of booting this GSI is having Halium patched kernel.

Keep in mind having android 9 firmware installed on the device as GSI base is mandatory (GSI can be used on android 8.0 and 8.1 vendors but experimental and not supported yet)

How to install?

1. Boot TWRP and FORMAT data

2. Flash vendor image and halium-boot.img (Halium-boot.img confirmed working on DRG and PL2, B2N needs testing)

3. Flash GSI installer zip

4. Reboot

Note: if the device is stuck on the splash screen on boot, simply force reboot using the power/volume button combo meant for your device

Download:

GSI - built by @mrcyjanek (download ONLY target.zip)

Vendor images

Halium-boot

Whats suppose to work?

Bluetooth

Camera

Cellular Radio

Mobile Data

GPS

Graphics

Sensors

Sound

In-call Audio

Touch

Wifi

Vibration

Anbox

Media Playback

Known bugs?

Random (but rare) BSOD + reboots

no way to unlock using Fingerprint

Touching Fingerprint sensor can reduce media volume

oh and of course VoLTE

Camera (on B2N)

Supports:

Halium telegram group

UBports telegram group

UBports Porting telegram group

ErfanGSIs telegram group

Report Bugs:

Explain your bug in proper support telegram groups (from above)

Please don't ask about spoon-feeding or helping on building kernel or device specific builds.

Please don't ask about picking/reverting commits or any basic git commands.

bug reports without logs will be ignored

logs we need are: android logcat, kernel log, syslog

kernel log:

dmesg

syslog:

cat /var/log/syslog

logcat:

sudo -s
LD_LIBRARY_PATH=/system/lib64 lxc-attach -e -n android -- /system/bin/logcat

Taken with all due respect from Erfan's Thread

Appendix:

Anbox installation guide (by SevralTi on Github)

sudo mount -o rw,remount /
sudo apt update && sudo apt install -y anbox-ubuntu-touch android-tools-adb
mkdir ~/anbox-data
wget http://cdimage.ubports.com/anbox-images/android-armhf-64binder.img -O ~/anbox-data/android.img
touch ~/anbox-data/.enable
sudo chmod -R o+wrx /home/phablet/anbox-data/data
sudo start -q anbox-container

reboot, wait 2 minutes the reboot again

To symlink anbox files to system:

ln -s ~/anbox-data/data/media/0/Documents ~/Documents/android
ln -s ~/anbox-data/data/media/0/Pictures ~/Pictures/android
ln -s ~/anbox-data/data/media/0/Music ~/Music/android
ln -s ~/anbox-data/data/media/0/Movies ~/Videos/android

To make the QS panel occupy the whole screen, install UT Tweak Tool from the Open Store and increase device display scaling

Libertine containers can't be created from the settings app for now. To create a container, pass the command "TMPDIR=/tmp" in the terminal and follow documentation here