I would like to port Ubuntu Touch to a device that is currently not supported. What are the requirements for doing this and where do I begin?
Ubuntu (Touch) 13.10 is released; it's stable for developers now. You can get the step-by-step guide here.
However, I used the CyanogenMod. Check the building CyanogenMod guide to learn how to build it.
The steps are:
These links give you a fair idea of how you should proceed. The actual code to be used differs from device to device, due to the different drivers, (but, Terminal commands would remain roughly the same) and it's something you'd have to work on yourself with lots of trial & error.
I tried porting to Lava Xolo Q800, which was built fine, and it installed too. But, it does nothing that a smartphone should do apart from connecting to WiFi. I've now reinstalled Android.
I would first start by getting a rooted Linux(Android) device and make sure you have a 64-bit Ubuntu system. (a lot of ram would be good like 16 gigs if you can swing it, or at least that much available with a swap file or partition)
If your not familiar with CyanogenMod become familiar by installing and by building it. I say this because the guide you already mentioned clearly states:
Depending on your preference, you may just want to start here:
Then go for the Cyanogenmod project, but I think your best bet is building Cyanogenmod. Once you have done that go back to the guide you mentioned.
Bottom line learn Android first, the more you can understand with Android the easier Ubuntu Touch will be to port.