I recently started managing several NixOS hosts with flakes, and my workflow was to edit the flake on my main machine, commit the changes to git, pull on the remote, and try to build there. I assumed there must be a way to build the configuration locally, but my guesses weren’t any good, so a bit of googling resolved with this:

nix build -L .#nixosConfigurations.<host>.config.system.build.toplevel
# note: -L = --print-build-logs

Now I can check configurations build before I commit the changes to git. Later I’m sure I can use my beefiest machine to build the configurations and remotely deploy them too, or use a common cache so that once I’ve built it on the first machine, the second machine will have access to those assets.