Over the years I have scripted my arch linux setup. https://github.com/prabirshrestha/simple-arch-installer
“here is the partition structure i want, here is the filesystem, the users, the packages i need installed and the services i need running”
Setting up machines and customizing installations would be a breeze.
Doing some things idempotently can be an interesting challenge