about summary refs log tree commit diff
path: root/pkgs/development/libraries/gjs
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2021-03-25 13:32:53 +0100
committerJan Tojnar <jtojnar@gmail.com>2021-05-05 22:42:14 +0200
commit96fc9752af471a2c64e9fd7595bc3363a7c138d3 (patch)
tree058fe893bd39bb6bccd9bdc75a90cdc034f4de31 /pkgs/development/libraries/gjs
parent5259071cd8cab63dcfb5b7590a1fa696c4cd0191 (diff)
gjs: fix installed tests
They were already failing on master (with pango 1.47 and gjs 1.66):

	(process:1186): Gjs-CRITICAL **: 12:36:09.500: JS ERROR: Error: Requiring Gtk, version 3.0: Typelib file for namespace 'HarfBuzz', version '0.0' not found
machine # @/nix/store/mca5jqi26f3h3s78p54bp59x4klyrch5-gjs-1.66.2-installedTests/libexec/installed-tests/gjs/js/testLegacyGObject.js:9:13

HarfBuzz is likely pulled in through Pango. Possibly introduced in https://github.com/NixOS/nixpkgs/pull/93799. But then why did not I notice that in GNOME 3.38 bump?
Diffstat (limited to 'pkgs/development/libraries/gjs')
-rw-r--r--pkgs/development/libraries/gjs/default.nix25
1 files changed, 16 insertions, 9 deletions
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index f807964024493..19fdf5ce68e22 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -16,6 +16,7 @@
 , libxml2
 , dbus
 , gdk-pixbuf
+, harfbuzz
 , makeWrapper
 , which
 , xvfb_run
@@ -25,7 +26,7 @@
 let
   testDeps = [
     gobject-introspection # for Gio and cairo typelibs
-    gtk3 atk pango.out gdk-pixbuf
+    gtk3 atk pango.out gdk-pixbuf harfbuzz
   ];
 in stdenv.mkDerivation rec {
   pname = "gjs";
@@ -36,6 +37,20 @@ in stdenv.mkDerivation rec {
     sha256 = "1vqsmzy2wmyhmq37y2c6jl0wq4xnicf0z7k6jaxn3aw11sh783ph";
   };
 
+  patches = [
+    # Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3961.
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gjs/-/commit/58337929c338e7b5c0a35196d783d3b2be542900.patch";
+      sha256 = "QgmU+d838fU5LiS4lhTF+179U1lY1L5tJbYtX/oc68k=";
+    })
+
+    # Hard-code various paths
+    ./fix-paths.patch
+
+    # Allow installing installed tests to a separate output.
+    ./installed-tests-path.patch
+  ];
+
   outputs = [ "out" "dev" "installedTests" ];
 
   nativeBuildInputs = [
@@ -68,14 +83,6 @@ in stdenv.mkDerivation rec {
     "-Dinstalled_test_prefix=${placeholder "installedTests"}"
   ];
 
-  patches = [
-    # Hard-code various paths
-    ./fix-paths.patch
-
-    # Allow installing installed tests to a separate output.
-    ./installed-tests-path.patch
-  ];
-
   doCheck = true;
 
   postPatch = ''