I'm a web developer that uses Ubuntu Desktop 20.04 as my main development OS. I've had to install and configure Ubuntu multiple times lately due to a few issues with different PCs along with the fact that I work from home and in an office using different PCs. I've noticed that I always forget something that makes the different installs act differently but rarely know exactly what differs.
My question is if it's possible to create a custom ISO that I can use for future installations that has Ubuntu 20.04 along with both desktop programs such as VS Code including extensions and settings, FileZilla etc and services such as PHP, Apache, ODBC etc? I'd also like if it supports things like the Oh My ZSH terminal with a theme & custom fonts as the default terminal and a custom Ubuntu theme including a shell theme. If possible I'd like an installer that makes the new PC an exact copy of my previous one that I create the ISO from. Is that possible? Are there any limitations to the possibilities?
I've done some research and found that it's possible for Ubuntu Server using Cubic but haven't found anything for Ubuntu Desktop that supports desktop apps etc. These will be for my personal use so there's no problem if a few accounts follows the install etc as I won't share this with anyone else.
Thanks in advance!