Hello Very long winded post ahead. TL&DR : it worked finally. Theoretically, it could be easier. This all started with a new attempt at 26.04 installed with system-image-cli while I had used 24.04-2 stable since at least 10 days. I was expecting this to be a routine update but my Fairphone 5 was launched into an infinite reboot loop. That’s what ‘unstable version’ means. I was quite happy then to have picked a phone with an easily removable battery. No need to fiddle with buttons to try to get to the fastboot, just remove the battery and it’s just a matter of pressing the down button with the power one at the same time. All following tests have been done with my Fairphone 5 started to the bootloader (Volume and Power buttons pressed simultaneously). Now the first step is to try to download everything using wget -r to a removable USB hard disk under //media/gerard/ntfs/web/ → creates a subdirectory named ‘system-image.ubports.com’ I believed after many efforts that I had downloaded everything that was necessary. How wrong I was. Actually I had done that several weeks ago but I had always balked at the risk of trying that while my phone was working so I had quietly left the hard disk to gather dust beside my keyboard. Now that my phone was borked, time to finally take the plunge to a local only installation. So I ‘disconnected’ from the internet (actually by running ‘ip route del default’ and ‘sudo systemctl disable NetworkManager-dispatcher.service’ to stop the darn Ubuntu OS of reinstating default route by itself) and started naively : ./ubports-installer_0.11.2_linux_x86_64.AppImage --systemimage file://media/gerard/ntfs/web/system-image.ubports.com/ immediate failure, protocol error. It seems the thing just loves http. So python to the rescue, create a fake local (!) internet server : cd /media/gerard/ntfs python -m http.server and then : ./ubports-installer_0.11.2_linux_x86_64.AppImage --systemimage http://localhost:8000/web/system-image.ubports.com/ better but it fails then a bit later saying that it could not access the installer config and advised me to connect to the internet. Thanks but no thanks, it’s just that I’m trying to avoid. Try to starts then with : ./ubports-installer_0.11.2_linux_x86_64.AppImage --file /shared/ut/installer/installer-configs/v2/devices/FP5.yml --systemimage http://localhost:8000/web/system-image.ubports.com/ /shared/ut/installer/installer-configs being the local directory where I have git cloned https://github.com/ubports/installer-configs better but it fails then a bit later with : info: Welcome to the UBports Installer version 0.11.2! [23766:0808/171214.633552:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times! [23766:0808/171217.000252:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times! [23766:0808/171219.098556:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times! info: Installing Ubuntu Touch on your Fairphone 5 (FP5) info: configuring... info: settings: {"bootstrap":true,"partition":true,"channel":"24.04-1.x/arm64/android9plus/stable"} error: Error: systemimage:install: Error: 404 stack trace: Error: 404 at /tmp/.mount_ubportQ9b0xC/resources/app.asar/src/core/plugins/systemimage/api.js:47:13 at process.processTicksAndRejections (node:internal/process/task_queues:95:5) Looking at the trace from my local http server, I found that it failed at accessing "GET /web/system-image.ubports.com/24.04-1.x/arm64/android9plus/stable/FP5/index.json HTTP/1.1" 404 - and indeed looking at the local directory and comparing it with the remote one on the system-image.ubports.com, it was missing all files. Getting them with cd /media/gerard/ntfs/web/system-image.ubports.com/24.04-1.x wget -r -np -nH --cut-dirs=1 -R "index.html*" https://system-image.ubports.com/24.04-1.x/arm64/android9plus/stable/FP5/ that’s where I found out that my huge download of the whole ubports system-image server had failed to get everything. Next try again: ./ubports-installer_0.11.2_linux_x86_64.AppImage --file /shared/ut/installer/installer-configs/v2/devices/FP5.yml --systemimage http://localhost:8000/web/system-image.ubports.com/ It then tries to download some files (progress!) but fails to find some files and errors out again. Now I had dowloaded the pool directory a few weeks ago and downloaded the index files today. So I edited the index.json file to remove references to UT versions 24.04-1.3 and 1.4. Now installer says : ‘Pushing Ubuntu Touch files’. Installer says : ‘Report your result’ The red robot appears, installing system update. The phone restarts. The Ubuntu logo appears. ‘Welcome to Ubuntu Touch 24.04-1.2’ Enter the Sim code. Go to the update page and update to most recent 24.04-1.4 stable. Restart, all is well in the world. As the infamous saying goes, ‘Mission accomplished’. The first reported local installation (at modern times) of Ubuntu Touch is done. After that, the first time I tested and during the process the freaking Ubuntu OS of my PC had sneakily restarted the network and recreated the default route. That’s when I learned that I needed to use ‘ sudo systemctl disable NetworkManager-dispatcher.service’ to keep the PC disconnected frol the Internet. Another try, another success. I was back again at 24.04-1.2 stable. Updating then led me surprisingly to not download 24.04-1.4, but to be proposed 24.04-2. I wanted to repeat the test, so I got out of the update screen and in again and this time UT downloaded 24.04-1.4. The phone upgraded to this version without problem, a few quick tests without issue. After this, I found out that my Ubuntu PC has again enabled the network behind my back, this time due to dhcp. Third test after having given up on software solution, actually stopping the Internet router: success. Final result : success.