For a pre-defined network config you could have a snap shipping a simple script that writes out netplan config and has the network-setup-control interface connected … or as you already noticed you could use cloud-init here.
To create a SSO user (who also has ssh access) there are system-user assertions. the system will attempt to auto import them on boot if you put them on a usb device that you attach:
for /etc/environment there are a few core snap configs (proxy and the like) … if you want to go beyond this you will have to apply some hackery. i.e. you could ship an initrd script snippet in your gadget to modify the file befored boot using: