IMO the nixos-rebuild scripts are unnecessary and just obscures what’s being built.
build-vm is the same as building the configs “config.system.build.vm” attribute.
nixos-rebuild is fine for getting started but you end up needing to use the attribute path to do anything more complicated like CI caching or inspecting the drvPath.