mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 15:11:25 +00:00
116c16d9e2
This isn't strictly necessary yet as LightDM doesn't read the wayland sessions, but there's no harm in being explicit.
42 lines
1.4 KiB
Nix
42 lines
1.4 KiB
Nix
import ./make-test.nix ({ pkgs, ...} : {
|
|
name = "gnome3";
|
|
meta = with pkgs.stdenv.lib.maintainers; {
|
|
maintainers = [ domenkozar eelco chaoflow lethalman ];
|
|
};
|
|
|
|
machine =
|
|
{ ... }:
|
|
|
|
{ imports = [ ./common/user-account.nix ];
|
|
|
|
services.xserver.enable = true;
|
|
|
|
services.xserver.displayManager.gdm.enable = false;
|
|
services.xserver.displayManager.lightdm.enable = true;
|
|
services.xserver.displayManager.lightdm.autoLogin.enable = true;
|
|
services.xserver.displayManager.lightdm.autoLogin.user = "alice";
|
|
services.xserver.desktopManager.gnome3.enable = true;
|
|
services.xserver.desktopManager.default = "gnome-xorg";
|
|
|
|
virtualisation.memorySize = 1024;
|
|
};
|
|
|
|
testScript =
|
|
''
|
|
$machine->waitForX;
|
|
|
|
# wait for alice to be logged in
|
|
$machine->waitForUnit("default.target","alice");
|
|
|
|
# Check that logging in has given the user ownership of devices.
|
|
$machine->succeed("getfacl /dev/snd/timer | grep -q alice");
|
|
|
|
$machine->succeed("su - alice -c 'DISPLAY=:0.0 gnome-terminal &'");
|
|
$machine->succeed("xauth merge ~alice/.Xauthority");
|
|
$machine->waitForWindow(qr/Terminal/);
|
|
$machine->succeed("timeout 900 bash -c 'while read msg; do if [[ \$msg =~ \"GNOME Shell started\" ]]; then break; fi; done < <(journalctl -f)'");
|
|
$machine->sleep(10);
|
|
$machine->screenshot("screen");
|
|
'';
|
|
})
|