1{ lib, ... }:
2
3let
4 port = toString 4321;
5in
6{
7 name = "mpv";
8 meta.maintainers = with lib.maintainers; [ zopieux ];
9
10 nodes.machine =
11 { pkgs, ... }:
12 {
13 environment.systemPackages = [
14 pkgs.curl
15 (pkgs.mpv.override {
16 scripts = [ pkgs.mpvScripts.simple-mpv-webui ];
17 })
18 ];
19 };
20
21 testScript = ''
22 machine.execute("set -m; mpv --script-opts=webui-port=${port} --idle=yes >&2 &")
23 machine.wait_for_open_port(${port})
24 assert "<title>simple-mpv-webui" in machine.succeed("curl -s localhost:${port}")
25 '';
26}