{ config, ... }:
{
  name = "nix-serve";
  nodes.machine = { pkgs, ... }: {
    services.nix-serve.enable = true;
    environment.systemPackages = [
      pkgs.hello
    ];
  };
  testScript = let
    pkgHash = builtins.head (
      builtins.match "${builtins.storeDir}/([^-]+).+" (toString config.node.pkgs.hello)
    );
  in ''
    start_all()
    machine.wait_for_unit("nix-serve.service")
    machine.wait_for_open_port(5000)
    machine.succeed(
        "curl --fail -g http://0.0.0.0:5000/nar/${pkgHash}.nar -o /tmp/hello.nar"
    )
  '';
}
