1import ./make-test.nix ({ pkgs, ...} : {
2 name = "xfce";
3 meta = with pkgs.stdenv.lib.maintainers; {
4 maintainers = [ eelco chaoflow shlevy ];
5 };
6
7 machine =
8 { config, pkgs, ... }:
9
10 { imports = [ ./common/user-account.nix ];
11
12 services.xserver.enable = true;
13
14 services.xserver.displayManager.auto.enable = true;
15 services.xserver.displayManager.auto.user = "alice";
16
17 services.xserver.desktopManager.xfce.enable = true;
18 };
19
20 testScript =
21 ''
22 $machine->waitForX;
23 $machine->waitForWindow(qr/xfce4-panel/);
24 $machine->sleep(10);
25
26 # Check that logging in has given the user ownership of devices.
27 $machine->succeed("getfacl /dev/snd/timer | grep -q alice");
28
29 $machine->succeed("su - alice -c 'DISPLAY=:0.0 xfce4-terminal &'");
30 $machine->waitForWindow(qr/Terminal/);
31 $machine->sleep(10);
32 $machine->screenshot("screen");
33 '';
34})