1. Write a config file
2. Run the command that builds the system
3. Test the system
4. (optional) Run the command that bakes the fresh system generated from the config into an image.
5. Deploy using either an image or NixOS's config based deployment tooling.