NixOS
If you use Linux as your working system, you've almost certainly run into the need to configure the system to your liking after a fresh install. This is especially critical if you use several devices for work. Ideas like ansible or homegrown scripts that install packages and apply a configuration come to mind. However, this isn't the best option, since it's imperative. You describe what needs to be done instead of what you want to end up with.
👉 I recommend taking a look at an interesting distribution, NixOS, built around the Nix package manager, which has the largest number of available packages among all distributions. Your system configuration — including the set of packages, network settings, docker support, the list of users, and everything else — is defined in the file /etc/nixos/configuration.nix in the functional language nix. You'll have to tinker to get everything set up the way you want, but after that you'll simply get a ready-to-work OS with just a single command:
1nixos-rebuild switch
which creates an isolated copy of the system based on the latest configuration and adds the new version to the bootloader. So if something goes wrong, you can always roll back all the changes with a single command. That's another very significant advantage of this OS.
This OS appeared on my horizon a couple of years ago, but only now, after many years of working on traditional Debian-based distributions, have I decided to migrate to it. There's still a lot to do, but it'll be interesting, at the very least 👾👀