about summary refs log tree commit diff
path: root/nixos/tests/gnome-photos.nix
diff options
context:
space:
mode:
authorVladimír Čunát <v@cunat.cz>2019-08-24 08:19:05 +0200
committerVladimír Čunát <v@cunat.cz>2019-08-24 08:55:37 +0200
commit2e6bf42a2207d5ecfe6e67de2def6e004a0eb1f1 (patch)
tree36de0660dc2c9f3731bd8b60ec852ca0c452efce /nixos/tests/gnome-photos.nix
parent84a91208a948be5eca97ea182c4256d9d6ecf171 (diff)
parent8943fb5f24b9e1aa1d577be4e214d166643269fd (diff)
Merge branch 'master' into staging-next
There ver very many conflicts, basically all due to
name -> pname+version.  Fortunately, almost everything was auto-resolved
by kdiff3, and for now I just fixed up a couple evaluation problems,
as verified by the tarball job.  There might be some fallback to these
conflicts, but I believe it should be minimal.

Hydra nixpkgs: ?compare=1538299
Diffstat (limited to 'nixos/tests/gnome-photos.nix')
-rw-r--r--nixos/tests/gnome-photos.nix42
1 files changed, 42 insertions, 0 deletions
diff --git a/nixos/tests/gnome-photos.nix b/nixos/tests/gnome-photos.nix
new file mode 100644
index 0000000000000..2ecda1d68ce34
--- /dev/null
+++ b/nixos/tests/gnome-photos.nix
@@ -0,0 +1,42 @@
+# run installed tests
+import ./make-test.nix ({ pkgs, lib, ... }:
+
+let
+
+  # gsettings tool with access to gsettings-desktop-schemas
+  desktop-gsettings = with pkgs; stdenv.mkDerivation {
+    name = "desktop-gsettings";
+    dontUnpack = true;
+    nativeBuildInputs = [ glib wrapGAppsHook ];
+    buildInputs = [ gsettings-desktop-schemas ];
+    installPhase = ''
+      runHook preInstall
+      mkdir -p $out/bin
+      ln -s ${glib.bin}/bin/gsettings $out/bin/desktop-gsettings
+      runHook postInstall
+    '';
+  };
+
+in
+
+{
+  name = "gnome-photos";
+  meta = {
+    maintainers = pkgs.gnome-photos.meta.maintainers;
+  };
+
+  machine = { pkgs, ... }: {
+    imports = [ ./common/x11.nix ];
+    programs.dconf.enable = true;
+    services.gnome3.at-spi2-core.enable = true; # needed for dogtail
+    environment.systemPackages = with pkgs; [ gnome-desktop-testing desktop-gsettings ];
+    services.dbus.packages = with pkgs; [ gnome-photos ];
+  };
+
+  testScript = ''
+    $machine->waitForX;
+    # dogtail needs accessibility enabled
+    $machine->succeed("desktop-gsettings set org.gnome.desktop.interface toolkit-accessibility true 2>&1");
+    $machine->succeed("gnome-desktop-testing-runner -d '${pkgs.gnome-photos.installedTests}/share' 2>&1");
+  '';
+})