On fedora atomic desktops /etc is completely writable so you can configure some things. And using rpm-ostree it is possible to do weird things too
But you should have a look at how Bazzite is actually built. A bunch of containerfiles, scripts, ujust files, ... not hard to understand but kinda messy. And you kinda need a server. On NixOS you do this on your machine.
And do note that there are presets online and people help you set things up.