Halium 12.0 + LineageOS 19.1 + Ubuntu Touch (Focal 20.04) for Samsung Galaxy S10 (beyond1lte) Build rootfs From Scratch
-
I'm trying to build a root file system for the device;
Device codename: beyond1lte
Device model: Samsung Galaxy S10 (SM-G973F)
Chipset: Exynos 9820
Halium version: 12.0
LineageOS version: 19.1
Ubuntu Touch version: Focal 20.04The instructions I'm using come from ChatGPT which appears to be very outdated in this instance. It tells me to make the file system with UBports rootfs-builder from;
https://github.com/ubports/rootfs-builder.git
Which isn't available at that link.
Can anyone please point me in the right direction to this tool or something similar for building file systems for Ubuntu Touch.
-
@BaShMu this tutorial includes kernel compilation and rootfs creation after it:
https://docs.ubports.com/en/latest/porting/build_and_boot/standalone_kernel_build.html -
The steps I am following are as follows;
Hereβs a streamlined step-by-step guide to build Halium 12.0 + LineageOS 19.x + Ubuntu Touch (Focal 20.04) for Samsung Galaxy S10 (beyond1lte) on Parrot Linux, using the exynos9820 kernel tree and
vendor_samsung.
π§° Prerequisites
System Setup (Parrot OS)-
Install required packages:
sudo apt update sudo apt install git-core gnupg flex bison 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 \ fontconfig bc python-is-python3 python3-pip repo lzop -
Set up git credentials:
git config --global user.name "Your Name" git config --global user.email "you@example.com"
οΈ Create Working Directoriesmkdir -p ~/halium-12.0-beyond1lte cd ~/halium-12.0-beyond1lteMake sure your build location is on an ext4 partition, not NTFS, or it will fail.
Initialize and Sync Halium + LineageOS Treesrepo init -u https://github.com/Halium/android -b halium-12.0 --depth=1 repo sync -c -j$(nproc --all) --force-sync --no-clone-bundle --no-tags
Clone Required Device Treesgit clone https://github.com/LineageOS/android_device_samsung_beyond1lte -b lineage-19.1 device/samsung/beyond1lte git clone https://github.com/LineageOS/android_device_samsung_exynos9820-common.git -b lineage-19.1 device/samsung/exynos9820-common git clone https://github.com/TheMuppets/proprietary_vendor_samsung -b lineage-19.1 vendor/samsung git clone https://github.com/LineageOS/android_kernel_samsung_exynos9820 -b lineage-19.1 kernel/samsung/exynos9820
οΈ Apply Halium PatchesUse Haliumβs helper script:
bash halium/devices/setup-device device/samsung/beyond1lteOr apply relevant patches manually from:
https://github.com/Halium/halium-devices/Make sure to patch:
initsystem/corebuildsystem/sepolicy
οΈ Prepare Ubuntu Touch Rootfs-
Install
ubuntu-device-flashandpmbootstrapif needed. -
Download rootfs:
mkdir -p ubuntu-touch cd ubuntu-touch wget https://cdimage.ubports.com/ubuntu-touch/edge/channel/halium/ubuntu-touch-android12-arm64-rootfs.tar.gz
π§± Build Halium System
source build/envsetup.sh lunch lineage_beyond1lte-eng mka halium-boot mka systemimageOutput images will be in
out/target/product/beyond1lte/
Flash the Device (Example)fastboot flash boot out/target/product/beyond1lte/halium-boot.img fastboot flash system out/target/product/beyond1lte/system.imgThen push the rootfs and resize:
adb shell mkdir /data/rootfs exit adb push ubuntu-touch-android12-arm64-rootfs.tar.gz /data/ adb shell cd /data tar -xzf ubuntu-touch-android12-arm64-rootfs.tar.gz
Final Steps- Set up libhybris compatibility.
- Adjust fstab, init.rc, and udev.
- Test Halium Boot β If it gets to root shell, you're almost there.
- Deploy Ubuntu Touch via
ubports-installerorhalium-install.
-
-
@BaShMu it's an old way of porting devices. Use the tutorial I linked
-
A atarilinux referenced this topic on
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better π
Register Login