I too installed successfully Ubuntu Touch with UBports-installer on my Google Pixel 3a XL from a Mac OSx system
I bought a refurbished Google Pixel 3a XL for 140£ (UK) and and should I need it, replacment batteries are available for 10-15£.
It's been very difficult for, specially in the understanding of the very composition of the boot loader, the screens, lock/unlock, and tools available.
I manage to install only by selecting manually the device on ubports and by flagging "erase user data
Zlamalp summary of steps is great and is a reassurance.
The final result is impressive, yet still lacking a lot of features.
Usable, 100% usable, but something that has great potential.
The more people (and developers) get on the platform, the more it will evolve.
My contribution to the installation is this.
Concepts
Abandon any hope on data while installing: sounds like a dire warning, but is just the basic. You are installing something new. Until you are familiar with it, like a good old PC, chances are you will "format and reinstall" many times. So, you are expected to lose all data on the device.
Fastboot: is a screen that appears before the operating systems are loaded - you can get stuck there, but it's fine, you can always reinstall either Ubuntu Touch or any version of the firmware of your device
Recovery Mode: is a special option you can get into after the fastboot. Best, is to get to it from android, with ./adb reboot recovery
Developer Mode: this an android setting - you tap 7 times on the android version (google it)
OTA images and flashing: these are usually zip files of the Android version you want to install. You will have to revert your android to an old "firmware" version. But if you use the crome installer, you will never need these. Here their location anyway (you might have to agree with Google T&Cs) https://developers.google.com/android/ota#bonito
Preparation - IMPORTANT!!!
Good to know commands
./adb devices
run when you are logged in android, in developer mode, and usb debug is enabled - response is instantaneous - you don't need to wait for devices. Either works or something's amiss
./fastboot devices
- same as above, but only should you be stuck inside the fastboot
./fastboot flashing unlock
- to manually unlock the device
Unlocking boot loader
As zlamalp wrote (plus a bit of mine):
- on android enable developer mode
- on android enable USB debug
- on android allow OEM unlock
- ensure device is connected and adb works with `./adb devices`
- `./adb reboot bootloader` - will reboot android to the boot loader
- `./fastboot flashing unlock` - this, once you are inside the bootloader, and then **follow on screen instructions to confirm**
Installation
- With Chrome, flash your Pixel 3a XL device to PQ3B.190801.002 - Chrome will tell you to confirm unlocking/locking the boot loader - use volume keys to switch options and power button to confirm
- Once in Android older firmware PQ3B.190801.002, a. enable developer mode b. enable usb debug
- Open up ubports, choose manually your device, and begin installation with both 2 options flagged: wipe user data AND bootstrap
- ubports will tell you what to do next
In theory, once the device reboots, and gets past the recovery mode, as instructions on ubports will tell, you should get a blank screen with Google logo, and then you should see the Ubuntu Touch boot loader - do not touch anything and let it run.
So, great achievements.
Next will be choosing on what of the many options to contribute with