diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix index ee29c6a97a4..357bf076459 100644 --- a/pkgs/development/libraries/gjs/default.nix +++ b/pkgs/development/libraries/gjs/default.nix @@ -17,6 +17,7 @@ , dbus , gdk-pixbuf , makeWrapper +, which , xvfb_run , nixosTests }: @@ -28,11 +29,11 @@ let ]; in stdenv.mkDerivation rec { pname = "gjs"; - version = "1.64.2"; + version = "1.64.3"; src = fetchurl { url = "mirror://gnome/sources/gjs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0ywrsfmkxaw11z83dnmb9yqkn6k3c1mkxw2mv6arbwad6x6q7zqm"; + sha256 = "1rl524rmdbpmp5xdkm8dx3znq47l7dgvh192x80zjf8wc1af35lx"; }; outputs = [ "out" "dev" "installedTests" ]; @@ -42,6 +43,7 @@ in stdenv.mkDerivation rec { ninja pkgconfig makeWrapper + which # for locale detection libxml2 # for xml-stripblanks ]; @@ -74,11 +76,10 @@ in stdenv.mkDerivation rec { ./installed-tests-path.patch ]; - # Gio test is failing - # https://github.com/NixOS/nixpkgs/pull/81626#issuecomment-599325843 - doCheck = false; + doCheck = true; postPatch = '' + patchShebangs build/choose-tests-locale.sh substituteInPlace installed-tests/debugger-test.sh --subst-var-by gjsConsole $out/bin/gjs-console ''; @@ -95,7 +96,15 @@ in stdenv.mkDerivation rec { ''; postInstall = '' + # TODO: make the glib setup hook handle this + installedTestsSchemaDatadir="$installedTests/share/gsettings-schemas/${pname}-${version}" + mkdir -p "$installedTestsSchemaDatadir" + mv "$installedTests/share/glib-2.0" "$installedTestsSchemaDatadir" + ''; + + postFixup = '' wrapProgram "$installedTests/libexec/gjs/installed-tests/minijasmine" \ + --prefix XDG_DATA_DIRS : "$installedTestsSchemaDatadir" \ --prefix GI_TYPELIB_PATH : "${stdenv.lib.makeSearchPath "lib/girepository-1.0" testDeps}" ''; diff --git a/pkgs/development/libraries/gjs/installed-tests-path.patch b/pkgs/development/libraries/gjs/installed-tests-path.patch index 11a39b2dd9a..f9b1515b68e 100644 --- a/pkgs/development/libraries/gjs/installed-tests-path.patch +++ b/pkgs/development/libraries/gjs/installed-tests-path.patch @@ -1,5 +1,5 @@ diff --git a/installed-tests/meson.build b/installed-tests/meson.build -index 294d20c6..1e5029e0 100644 +index 7e842025..1e5029e0 100644 --- a/installed-tests/meson.build +++ b/installed-tests/meson.build @@ -1,7 +1,7 @@ @@ -12,6 +12,19 @@ index 294d20c6..1e5029e0 100644 # Simple shell script tests # +diff --git a/meson.build b/meson.build +index 084d5396..e5d73fcd 100644 +--- a/meson.build ++++ b/meson.build +@@ -540,7 +540,7 @@ install_data('installed-tests/extra/lsan.supp', + install_dir: get_option('datadir') / api_name / 'lsan') + + if get_option('installed_tests') +- schemadir = abs_datadir / 'glib-2.0' / 'schemas' ++ schemadir = get_option('installed_test_prefix') / 'share' / 'glib-2.0' / 'schemas' + install_data('installed-tests/js/org.gnome.GjsTest.gschema.xml', install_dir: schemadir) + meson.add_install_script('build/compile-gschemas.py', schemadir) + endif diff --git a/meson_options.txt b/meson_options.txt index 66f66024..008687cb 100644 --- a/meson_options.txt