Another alternative is to use Ubuntu server for the RPi instead of Raspberry Pi OS. Ubuntu server includes support for cloud-init which can be used for initial configuration.
If, like me, you've a few Raspberry Pi projects and need a standard way to create your base images before first boot then this CLI tool might be for you. So far, I've only tested with a couple of scenarios and the tool has worked very well. I still have to play with using a Custom Phase Script to set up custom drivers / non-standard packages. I'm confident it will work flawlessly. Very impressive IMHO.