diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index c7f71ead9c0d..b3681b7a8b69 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -10,7 +10,7 @@ , docbook_xsl , docbook_xml_dtd_412 , docbook_xml_dtd_43 -, glibcLocales +, docbook_xml_dtd_45 , libxml2 , upower , glib @@ -61,7 +61,7 @@ stdenv.mkDerivation rec { docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_43 - glibcLocales + docbook_xml_dtd_45 python3 # for data-generators systemd # used for checks to install systemd user service dbus # used for checks and pkgconfig to install dbus service/s @@ -80,15 +80,42 @@ stdenv.mkDerivation rec { libstemmer ]; + checkInputs = [ + python3.pkgs.pygobject3 + ]; + mesonFlags = [ # TODO: figure out wrapping unit tests, some of them fail on missing gsettings-desktop-schemas - "-Dfunctional_tests=false" + # "-Dfunctional_tests=true" "-Ddocs=true" ]; + doCheck = true; + postPatch = '' patchShebangs utils/g-ir-merge/g-ir-merge patchShebangs utils/data-generators/cc/generate + patchShebangs tests/functional-tests/test-runner.sh.in + patchShebangs tests/functional-tests/*.py + ''; + + preCheck = '' + # (tracker-store:6194): Tracker-CRITICAL **: 09:34:07.722: Cannot initialize database: Could not open sqlite3 database:'/homeless-shelter/.cache/tracker/meta.db': unable to open database file + export HOME=$(mktemp -d) + + # Our gobject-introspection patches make the shared library paths absolute + # in the GIR files. When running functional tests, the library is not yet installed, + # though, so we need to replace the absolute path with a local one during build. + # We are using a symlink that will be overridden during installation. + mkdir -p $out/lib + ln -s $PWD/src/libtracker-sparql-backend/libtracker-sparql-2.0.so $out/lib/libtracker-sparql-2.0.so.0 + ln -s $PWD/src/libtracker-miner/libtracker-miner-2.0.so $out/lib/libtracker-miner-2.0.so.0 + ln -s $PWD/src/libtracker-data/libtracker-data.so $out/lib/libtracker-data.so + ''; + + postCheck = '' + # Clean up out symlinks + rm -r $out/lib ''; postInstall = ''