import ../make-test-python.nix ({ lib, pkgs, ... }: { name = "ttyd"; meta.maintainers = with lib.maintainers; [ stunkymonkey ]; nodes.readonly = { pkgs, ... }: { services.ttyd = { enable = true; entrypoint = [ (lib.getExe pkgs.htop) ]; writeable = false; }; }; nodes.writeable = { pkgs, ... }: { services.ttyd = { enable = true; username = "foo"; passwordFile = pkgs.writeText "password" "bar"; writeable = true; }; }; testScript = '' for machine in [readonly, writeable]: machine.wait_for_unit("ttyd.service") machine.wait_for_open_port(7681) response = machine.succeed("curl -vvv -u foo:bar -s -H 'Host: ttyd' http://127.0.0.1:7681/") assert 'ttyd - Terminal' in response, "Page didn't load successfully" ''; })