···177177 startLimitIntervalSec = 500;
178178 startLimitBurst = 5;
179179180180+ environment.PATH = lib.mkForce null; # don't use default PATH, needed for tray icon menu links to work
181181+180182 serviceConfig = {
181183 # only add configFile if an application or a setting other than the default port is set to allow configuration from web UI
182184 ExecStart = escapeSystemdExecArgs (
+10-6
nixos/tests/sunshine.nix
···66 # test is flaky on aarch64
77 broken = pkgs.stdenv.hostPlatform.isAarch64;
88 maintainers = [ lib.maintainers.devusb ];
99+ timeout = 600;
910 };
10111112 nodes.sunshine =
···58595960 # initiate pairing from moonlight
6061 moonlight.execute("moonlight pair sunshine --pin 1234 >&2 & disown")
6161- moonlight.wait_for_console_text("Executing request")
6262+ moonlight.wait_for_console_text("Executing request.*pair")
62636364 # respond to pairing request from sunshine
6464- sunshine.succeed("curl --insecure -u sunshine:sunshine -d '{\"pin\": \"1234\"}' https://localhost:47990/api/pin")
6565+ sunshine.succeed("curl --fail --insecure -u sunshine:sunshine -d '{\"pin\": \"1234\"}' https://localhost:47990/api/pin")
65666666- # close moonlight once pairing complete
6767- moonlight.send_key("kp_enter")
6767+ # wait until pairing is complete
6868+ moonlight.wait_for_console_text("Executing request.*phrase=pairchallenge")
68697070+ # hide icewm panel
7171+ sunshine.send_key("ctrl-alt-h")
6972 # put words on the sunshine screen for moonlight to see
7070- sunshine.execute("gxmessage 'hello world' -center -font 'sans 75' >&2 & disown")
7373+ sunshine.execute("gxmessage ' ABC' -center -font 'consolas 100' -fg '#FFFFFF' -bg '#000000' -borderless -geometry '2000x2000' -buttons \"\" >&2 & disown")
71747275 # connect to sunshine from moonlight and look for the words
7376 moonlight.execute("moonlight --video-decoder software stream sunshine 'Desktop' >&2 & disown")
7474- moonlight.wait_for_text("hello world")
7777+ moonlight.wait_for_console_text("Dropping window event during flush")
7878+ moonlight.wait_for_text("ABC")
7579 '';
7680 }
7781)
···6262 fi
63636464 # packages in the nix store should have an empty metadata file
6565- used_source="$(jq -r '.source // ""' "$version"/.nupkg.metadata)"
6565+ used_source="$(jq -r 'if has("source") then .source else "" end' "$version"/.nupkg.metadata)"
6666 found=false
67676868 if [[ -z "$used_source" || -d "$used_source" ]]; then