UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. BaShMu
    3. Controversial
    B
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 2
    • Groups 0

    Posts

    Recent Best Controversial
    • RE: Halium 12.0 + LineageOS 19.1 + Ubuntu Touch (Focal 20.04) for Samsung Galaxy S10 (beyond1lte) Build rootfs From Scratch

      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)

      1. 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
        
      2. Set up git credentials:

        git config --global user.name "Your Name"
        git config --global user.email "you@example.com"
        

      πŸ—‚οΈ Create Working Directories

      mkdir -p ~/halium-12.0-beyond1lte
      cd ~/halium-12.0-beyond1lte
      

      Make sure your build location is on an ext4 partition, not NTFS, or it will fail.


      πŸ” Initialize and Sync Halium + LineageOS Trees

      repo 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 Trees

      git 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 Patches

      Use Halium’s helper script:

      bash halium/devices/setup-device device/samsung/beyond1lte
      

      Or apply relevant patches manually from:
      πŸ‘‰ https://github.com/Halium/halium-devices/

      Make sure to patch:

      • init
      • system/core
      • build
      • system/sepolicy

      βš™οΈ Prepare Ubuntu Touch Rootfs

      1. Install ubuntu-device-flash and pmbootstrap if needed.

      2. 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 systemimage
      

      Output 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.img
      

      Then 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-installer or halium-install.
      posted in Porting
      B
      BaShMu