As I discuss this with myself, these are kind of my notes, so if someone else wants to try these may assist.
I am not a programmer, software engineer or anything of the ilk. I can navigate clumsily round DOS commands and basic Terminal commands in Ubuntu and other distro's, so I am ahead in some respects, but an absolute novice with software!
I have led a disciplined electrical and electronic fault finding hobby and job. I did in my younger days repair to component level, but have lost this skill, so I am relatively good at resolving faults.
That's me, the main bit now:
Moto E (2015) Surnia is a really cheap second user phone to buy, picked one up for £8 on eBay. It is only 8Gb and 1Gb of RAM, but the fact that it is so cheap, if I brick the device, I have not lost too much cash.
Instructions on the linked forum page are good, but you still require some knowledge of the CLI and file ownership. Motorola bootloader is pretty much straightforward and Googling will show you what to do. To me that was the easy part.
Ran the instructions from within the halium-install folder in Ubuntu 22.04, so not in TWRP on the device but on the PC. This was not abundantly clear to me, but trial and error got me past that faux pas.
Forgot to ./(sh?) halium-install which would be nice to know so when running it use ./halium-install inside the unzipped halium install folder (doh.. I have used ./ and the sh command a lot when manually installing VBOX utilities pack in a virtual machine).
I kept getting a permission denied error when running halium-install. So I googled fu'd and realised I probably didn't have ownership so took ownership with the chmod command:
chmod u+x halium-install
This resolved the issue and allowed the halium-install command to work.
Then the phone showed up on desktop and not in adb. This causes the install not to be pushed to the device. Run:
sudo adb kill-server
sudo adb start-server
This showed the phone up in the CLI (adb devices)
After that the install went through fine, so I am now going to be messing with this device to see what is working and what isn't - there is a list, but I will have a play.
I don't know if it will have any bearing, but I installed the prerequisites for the build environment from the UBports documentation - I think it must have as I got :35 :permission denied before hand when executing the halium-install and only permission denied after I installed all the dependencies.
So I have muddled my way through this and got a successful install, a nice learning curve for me, which would be pretty straightforward to most Linux users.