From 208989323211c756dff690115e5cbde5ef7491ce Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sun, 10 Mar 2024 10:30:48 +0800 Subject: [PATCH] meson: Use env.prepend() for test environment setup On NixOS packages are installed in separate prefixes. Starting from GLib / gobject-introspection 2.80, GLib introspection data is provided by GLib itself instead of gobject-introspection. This causes tests failures on NixOS because env.set() resets the environment and GLib is missing from GI_TYPELIB_PATH: gi.RepositoryError: Typelib file for namespace 'Gio', version '2.0' not found See also: https://gitlab.gnome.org/GNOME/gtk/-/commit/29e6cc58088ef37bfde364965cdebd2f7402f315 --- libsecret/meson.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libsecret/meson.build b/libsecret/meson.build index 85ad68f..ea417ba 100644 --- a/libsecret/meson.build +++ b/libsecret/meson.build @@ -257,8 +257,8 @@ if get_option('introspection') # env to be used in tests that use the typelib, # to make sure they find the one for MockService test_typelib_env = environment() - test_typelib_env.set('GI_TYPELIB_PATH', meson.current_build_dir()) - test_typelib_env.set('LD_LIBRARY_PATH', meson.current_build_dir()) + test_typelib_env.prepend('GI_TYPELIB_PATH', meson.current_build_dir()) + test_typelib_env.prepend('LD_LIBRARY_PATH', meson.current_build_dir()) # Python Tests pytest_names = [