[solved] I am now unable to install Ubuntu Touch on my Nexus 5 phone



  • Hello. I did successfully install Ubuntu Touch on my Nexus 5 phone a while ago, following the instructions on this site here. I installed it manually, since I am using Debian stable on my desktop with root enabled (the package seemed geared toward users who use sudo for administrative tasks). I installed it on top of a LineageOS 14.1 installation (with TWRP as the recovery program). I formatted the drive while installing, so it was left with only Ubuntu Touch and its recovery program.

    I was experimenting with some things, and, upon messing up, I felt I should reinstall. So, I went through the procedure again (including the step "to erase the data on the device"). However, after another seemingly successful install, this time it got stuck loading the system. It does not complete the install. Perhaps there no longer is an OS on it? There is, however, still the UBports Recovery, and thus I can get the following:

    mark@debian:~/Downloads/Nexus5/LineageOS$ adb devices
    List of devices attached
    0c1a572a02e4ab55	recovery
    

    I've tried reinstalling Ubuntu Touch (via following the site instructions) a few times, but they've failed. I also tried using adb to "push" a LineageOS rom onto the device, and then seeing if I could use the UBports Recovery to install it. However, the UBports Recovery never finds the file.

    If you have any idea how I can solve this, do please share. Thanks.



  • Just some more details. Here's some stuff I get while installing that suggests to me the OS no longer exists.

    mark@debian:~/Templates/Nexus5/ubuntutouchinstall$ adb devices
    List of devices attached
    0c1a572a02e4ab55	recovery
    
    mark@debian:~/Templates/Nexus5/ubuntutouchinstall$ fastboot oem unlock
    < waiting for any device >
    ...
    FAILED (remote: Already Unlocked)
    finished. total time: 0.100s
    mark@debian:~/Templates/Nexus5/ubuntutouchinstall$ fastboot format cache
    Couldn't parse erase-block-size '0x'.
    Couldn't parse logical-block-size '0x'.
    mke2fs 1.44.5 (15-Dec-2018)
    /tmp/TemporaryFile-udAPxp: Unimplemented ext2 library function while setting up superblock
    /usr/lib/android-sdk/platform-tools/mke2fs failed with status 1
    mke2fs failed: 1
    error: Cannot generate image for cache
    
    mark@debian:~/Templates/Nexus5/ubuntutouchinstall$ adb devices
    List of devices attached
    
    

    So, for the step fastboot oem unlock, I initially had it in recovery mode, but switched it to the bootloader, which resulted in the feedback you see above (including the last entry where there is no device seen.)



  • To add, I tried to install the stock image from Android -- specifically 6.0.1 (M4B30Z, Dec 2016), found here, which gave some errors and failed to fully install (though it did change the look of the bootloader.) I still was stuck with the UBports Recovery program.

    So, I looked around and found the TWRP recovery program for hammerhead (Nexus 5 codename) and successfully installed that. I used it to wipe and format the drive, since all my previous attempts at installations (of either Ubuntu Touch or Android or LineageOS) failed.

    Then, I tried once again to install LineageOS, by transferring the file to the phone (see code below) and then using TWRP to install it. This worked.

    mark@debian:~/Downloads/Nexus5/LineageOS$ adb push lineage-14.1-20190301-UNOFFICIAL-hammerhead.zip /sdcard/.
    lineage-14.1-20190301-UNOFFICIAL-hamme... 4.4 MB/s (329881284 bytes in 71.197s)
    

    I must say that the UBports recovery program needs improvement. It's far inferior to the TWRP recovery program.

    Anyway, my issue is solved. I can now reinstall Ubuntu Touch. [edit] I did reinstall it. So, I'm good to go.