Xiaomi Redmi 4X (santoni)



  • ARM64 rootfs is now working on the device! (EXPERIMENTAL)

    How to test arm64:

    1. Download the latest image from CI (06-02-2020)
    2. Download the latest rootfs from ci.ubports.com.
    3. Install using halium-install like before and it should boot to ubports without modifications.

    It is recommended to wipe data before you switch architecture!!

    Otherwise, you can flash the armhf rootfs instead if you aren't interested in trying out experimental features.



  • Is the port still under active development? I'm thinking about buying this phone and if the port is abandoned please tell me so I can buy something like Redmi 6 instead.



  • @Danct12, can You help me with "build system image" from Github Actions?
    I need more info what to do after git clone...
    Or need to use something from marketplace?
    Why don't You share every fresh working image... The easiest way for "noobs like me 🙂

    Thanks in advance,
    Alex



  • @keep37 it is possible to use the TWRP recovery, or just the ubport recovery?



  • @aceclan I haven't tried the ubport recovery yet. The TWRP recovery works



  • Thank You @keep37 and also thanks to @Danct12
    It is ok , the ADB works in TWRP, but I have problems with hallium-install dependency's and this doesn't work for me:

    path/to/halium-install -p ut path/to/rootfs.tar.gz path/to/system.img
    doesn't work for me.

    (using manjaro linux)

    Do You know other way to install thees two files?
    ex.

    • extract the rootfs and Install the system.img from TWRP gui?

    • manual install using adb shell ?
      (extract steps from hallium install 😞 )

    Alex



  • I've succeeded.... 🙂



  • @aceclan If you get an error, next time please post the output of halium-install.

    But in the future, I'll try to make it so that you don't have to depend on a bash script to install, but rather using the official UBports installer.

    Or if you don't want that, I'll try to make it into a TWRP recovery zip. Of course, this installation method is not supported by the UBports dev team, but rather me.



  • @linuxadopter Not so much people reported issues, but so far I think the port could be usable for now.

    Aside from loudspeaker mode in calls doesn't route to the speaker properly and a few apparmor issues.



  • Dual Boot -> Sysadmin approach :)
    

    I am using right now dual boot stock fw / ubport - switching boot from TWRP.
    I write down thees steps to my self to remember and for everyone ho would like to try...
    Using stock because is good... (dm-verity, rooted , ad-aware .... ) , I could not find any rom with scheduled Power On/Off feature. Needed a solution without wipe. As I understand won't mix the stuff because rootfs.img and system.img is used on ubuntu touch so it will be separated.

    So try ubuntu for freedom:

    Having already an unlocked Redmi4x, with working StockRom, rooted, dm-verity, and TWRP installed.
    
    • Boot to TWRP recovery, Backup ALL stuff including DATA.

    • Copy TWRP folder outside from the phone , ex. to Your desktop.

    • Format Data, to remove encryption, otherwise ubport installer won't work.

    • Copy back the TWRP folder backups to phone and restore stock rom.

    • Fingerprint and unlock won't work so need these steps in recovery mode:

      Mount Data, System, and Delete from '/data/system' folder: files with .key extension and files with 'locksettings' keyword. Reboot to system. Everything should be fine , setup up again a security pattern. Fingerprints works after that.
      TWRP-pinreset1.png

    • Reboot to recovery and Backup stock Boot partition.

    • Backup to fasboot , flash halium-boot.img.

    • Reboot to Recovery, so ADB recovery is active , flash from Your Desktop:

      path/to/halium-install -p ut path/to/rootfs.tar.gz path/to/system.img
      
    • Backup Hallium boot partition.

    Now You can switch any time , just restore Boot partition. Enjoy 🙂 .

    Screenshot_2020-03-04-13-39-51.png



  • @aceclan can u explain detail how to flash system.img from twrp?



  • @4htet , if You read again the steps I wrote:

    • Reboot to Recovery, so ADB recovery is active , flash from Your Desktop:

    path/to/halium-install -p ut path/to/rootfs.tar.gz path/to/system.img


    Explain:

    When You are in recovery mode and connect the USB cable, the ADB recovery mode is active. (I suppose You already have android SDK, ADB , fastboot tools...)
    To check use command:
    adb devices
    in fastboot :
    fastboot devices

    so in this step won't flash from TWRP GUI, just use TWRP for adb, and reboot.

    How to flash, was specified already by @Danct12 , read here:
    http://docs.ubports.com/en/latest/porting/installing-16-04.html

    the basic is ->
    path/to/halium-install -p ut path/to/rootfs.tar.gz path/to/system.img,

    Best regards,
    Alex



  • @aceclan Thanks for your reply. I followed your instructions. Now , when the terminal tell me to set password, this message is showing continuously. "chroot: failed to run command 'passwd' : Exec format error failed, please try again"

    Edit: Now I know that I cant chroot into rootfs on my redmi4x which means qemu-user-static is not working on my Ubuntu 19.04. Still can`t find the fix for that.



  • Hey, I'm having some problems getting my 4X to boot into UT. I'm on Ubuntu 18.04 and downloaded latest System and Boot image from the Github. I also unlocked my bootloader and flashed newest TWRP. After that, I flashed Halium-Boot through fastboot. After booting back to TWRP( to get ADB to work) I started normally flashing with halium-install.
    Everything seems to be fine. It asked me for password and flashed system and rootfs to /data. After that while trying to boot the OS, it just locks up on Mi Logo and on dmesg -w I see:
    Screenshot from 2020-03-09 19-57-47.png
    Here's the last message from Halium-Install:
    Screenshot from 2020-03-09 19-59-03.png
    I really don't know what's the problem here. I tried reformatting /data, /system, /cache etc. and same results, I also tried installing LineageOS 16 (Official) and install ut on top of that but still the same thing.
    Any help is appriciated!



  • @BlackOtton Well you are in emergency telnet mode, maybe you should use telnet to connect to the shown IP and see what dmesg says there ^^



  • @4htet Make sure qemu-user-binfmt is installed on your host.



  • @BlackOtton Is your data partition f2fs? If it is then change it back to ext4.



  • @Danct12 Now booting on Ubuntu. Thx for ur help.



  • @Danct12 Thanks, reformatting /data to ext4 finally worked.



  • @4htet , I also had many problems with halium-install, I've spent a lot of time to figuring out , using manjaro linux ...

    I've installed the : qemu-arm-static , binfmt-qemu-static, simg2img from simg-tools package

    and changed a line in function setup_passwd() ,from "halium-install/functions/distributions.sh"

       do_until_success sudo chroot "$ROOTFS_DIR" passwd $user
            to
       sudo chroot "$ROOTFS_DIR" passwd $user
    

    on the halium install script are described the dependencies:


    "
    Halium installer script
    Copyright (C) 2017 JBBgameich
    Copyright (C) 2017 TheWiseNerd

    License: GPLv3

    dependencies: qemu binfmt-support qemu-user-static e2fsprogs sudo simg2img
    "

    --
    best regards,
    Alex


Log in to reply