diff --git a/doc/languages-frameworks/gnome.section.md b/doc/languages-frameworks/gnome.section.md index 0d4865b7af1..3c8539ac424 100644 --- a/doc/languages-frameworks/gnome.section.md +++ b/doc/languages-frameworks/gnome.section.md @@ -116,10 +116,6 @@ For convenience, it also adds `dconf.lib` for a GIO module implementing a GSetti - []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGAppsHook`. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGAppsHook`. - ::: {.warning} - The setup hook [currently](https://github.com/NixOS/nixpkgs/issues/56943) does not work in expressions with `strictDeps` enabled, like Python packages. In those cases, you will need to disable it with `strictDeps = false;`. - ::: - - []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGAppsHook`. You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook: diff --git a/pkgs/applications/audio/blanket/default.nix b/pkgs/applications/audio/blanket/default.nix index 4662002c95e..5a3d9949f8c 100644 --- a/pkgs/applications/audio/blanket/default.nix +++ b/pkgs/applications/audio/blanket/default.nix @@ -31,13 +31,13 @@ python3Packages.buildPythonApplication rec { pkg-config wrapGAppsHook4 desktop-file-utils + gobject-introspection ]; buildInputs = [ glib gtk4 libadwaita - gobject-introspection gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good @@ -48,9 +48,6 @@ python3Packages.buildPythonApplication rec { pygobject3 ]; - # Broken with gobject-introspection setup hook - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; format = "other"; postPatch = '' diff --git a/pkgs/applications/audio/cozy/default.nix b/pkgs/applications/audio/cozy/default.nix index 6398141c86d..8f7461683be 100644 --- a/pkgs/applications/audio/cozy/default.nix +++ b/pkgs/applications/audio/cozy/default.nix @@ -24,11 +24,6 @@ python3Packages.buildPythonApplication rec { pname = "cozy"; version = "1.2.1"; - # Temporary fix - # See https://github.com/NixOS/nixpkgs/issues/57029 - # and https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - src = fetchFromGitHub { owner = "geigi"; repo = pname; diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index a6164189c1d..d79aa713f08 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -27,17 +27,12 @@ python3Packages.buildPythonApplication rec { intltool wrapGAppsHook glibcLocales + gobject-introspection ]; - # as of 2021-07, the gobject-introspection setup hook does not - # work with `strictDeps` enabled, thus for proper `wrapGAppsHook` - # it needs to be disabled explicitly. https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - buildInputs = [ python3 gtk3 - gobject-introspection gnome.adwaita-icon-theme ]; diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix index 9eae394488e..78c17d09e0d 100644 --- a/pkgs/applications/audio/sonata/default.nix +++ b/pkgs/applications/audio/sonata/default.nix @@ -39,10 +39,6 @@ in buildPythonApplication rec { setuptools ]; - # Otherwise the setup hook for gobject-introspection is not run: - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - postPatch = '' # Remove "Local MPD" tab which is not suitable for NixOS. sed -i '/localmpd/d' sonata/consts.py diff --git a/pkgs/applications/audio/sublime-music/default.nix b/pkgs/applications/audio/sublime-music/default.nix index d469c9689a5..5c64efce709 100644 --- a/pkgs/applications/audio/sublime-music/default.nix +++ b/pkgs/applications/audio/sublime-music/default.nix @@ -75,10 +75,6 @@ python3Packages.buildPythonApplication rec { ++ lib.optional serverSupport bottle ; - # hook for gobject-introspection doesn't like strictDeps - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - nativeCheckInputs = with python3Packages; [ pytest ]; diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix index 2018e1d5e2a..abbfefce529 100644 --- a/pkgs/applications/editors/rednotebook/default.nix +++ b/pkgs/applications/editors/rednotebook/default.nix @@ -30,10 +30,6 @@ buildPythonApplication rec { "--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" ]; - # Until gobject-introspection in nativeBuildInputs is supported. - # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-472568643 - strictDeps = false; - meta = with lib; { homepage = "https://rednotebook.sourceforge.io/"; changelog = "https://github.com/jendrikseipp/rednotebook/blob/v${version}/CHANGELOG.md"; diff --git a/pkgs/applications/graphics/curtail/default.nix b/pkgs/applications/graphics/curtail/default.nix index 118703afc60..1d7df76c214 100644 --- a/pkgs/applications/graphics/curtail/default.nix +++ b/pkgs/applications/graphics/curtail/default.nix @@ -37,24 +37,30 @@ python3.pkgs.buildPythonApplication rec { meson ninja pkg-config + gobject-introspection + ]; + + buildInputs = [ + appstream-glib + gettext + gtk3 ]; propagatedBuildInputs = [ - appstream-glib python3.pkgs.pygobject3 - gobject-introspection - gettext ]; - # Currently still required for the gobject-introspection setup hook - strictDeps = false; - preInstall = '' patchShebangs ../build-aux/meson/postinstall.py ''; - postInstall = '' - wrapProgram $out/bin/curtail --prefix PATH : ${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]} + dontWrapGApps = true; + + preFixup = '' + makeWrapperArgs+=( + "''${gappsWrapperArgs[@]}" + "--prefix" "PATH" ":" "${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]}" + ) ''; meta = with lib; { diff --git a/pkgs/applications/graphics/mcomix/default.nix b/pkgs/applications/graphics/mcomix/default.nix index fbc80d0da6d..2cec147fb30 100644 --- a/pkgs/applications/graphics/mcomix/default.nix +++ b/pkgs/applications/graphics/mcomix/default.nix @@ -25,17 +25,13 @@ python3.pkgs.buildPythonApplication rec { hash = "sha256-Nok4oqTezO84q9IDZvgi33ZeKfRL+tpg7QEDmp2ZZpU="; }; - buildInputs = [ gobject-introspection gtk3 gdk-pixbuf ]; - nativeBuildInputs = [ wrapGAppsHook ]; + buildInputs = [ gtk3 gdk-pixbuf ]; + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; propagatedBuildInputs = (with python3.pkgs; [ pillow pygobject3 pycairo ]); # Tests are broken doCheck = false; - # Correct wrapper behavior, see https://github.com/NixOS/nixpkgs/issues/56943 - # until https://github.com/NixOS/nixpkgs/pull/102613 - strictDeps = false; - # prevent double wrapping dontWrapGApps = true; diff --git a/pkgs/applications/graphics/pick-colour-picker/default.nix b/pkgs/applications/graphics/pick-colour-picker/default.nix index 0d3a86663b3..774a8b19dd3 100644 --- a/pkgs/applications/graphics/pick-colour-picker/default.nix +++ b/pkgs/applications/graphics/pick-colour-picker/default.nix @@ -37,10 +37,6 @@ buildPythonPackage rec { gtk3 ]; - # https://github.com/NixOS/nixpkgs/issues/56943 - # this must be false, otherwise the gobject-introspection hook doesn't run - strictDeps = false; - preDistPhases = [ "fixupIconPath" ]; fixupIconPath = '' diff --git a/pkgs/applications/misc/gnome-secrets/default.nix b/pkgs/applications/misc/gnome-secrets/default.nix index 1b8a7e706dd..676a19641bd 100644 --- a/pkgs/applications/misc/gnome-secrets/default.nix +++ b/pkgs/applications/misc/gnome-secrets/default.nix @@ -18,7 +18,6 @@ python3Packages.buildPythonApplication rec { pname = "gnome-secrets"; version = "7.2"; format = "other"; - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchFromGitLab { domain = "gitlab.gnome.org"; diff --git a/pkgs/applications/misc/hamster/default.nix b/pkgs/applications/misc/hamster/default.nix index dbf7e1aee74..925d246ba84 100644 --- a/pkgs/applications/misc/hamster/default.nix +++ b/pkgs/applications/misc/hamster/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool +{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3 , wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }: python3Packages.buildPythonApplication rec { @@ -28,6 +28,7 @@ python3Packages.buildPythonApplication rec { pango gdk-pixbuf atk + gtk3 ]; propagatedBuildInputs = with python3Packages; [ @@ -37,10 +38,6 @@ python3Packages.buildPythonApplication rec { dbus-python ]; - # Setup hooks have trouble with strict deps. - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - dontWrapGApps = true; # Arguments to be passed to `makeWrapper`, only used by buildPython* diff --git a/pkgs/applications/misc/kupfer/default.nix b/pkgs/applications/misc/kupfer/default.nix index 47e310fb765..fbb33c7e096 100644 --- a/pkgs/applications/misc/kupfer/default.nix +++ b/pkgs/applications/misc/kupfer/default.nix @@ -11,6 +11,8 @@ , shared-mime-info , wrapGAppsHook , wafHook +, bash +, dbus }: with python3Packages; @@ -33,14 +35,12 @@ buildPythonApplication rec { itstool # for help pages desktop-file-utils # for update-desktop-database shared-mime-info # for update-mime-info + docutils # for rst2man + dbus # for detection of dbus-send during build ]; - buildInputs = [ docutils libwnck keybinder3 ]; + buildInputs = [ libwnck keybinder3 bash ]; propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ]; - # without strictDeps kupfer fails to build: Could not find the python module 'gi.repository.Gtk' - # see https://github.com/NixOS/nixpkgs/issues/56943 for details - strictDeps = false; - postInstall = '' gappsWrapperArgs+=( "--prefix" "PYTHONPATH" : "${makePythonPath propagatedBuildInputs}" diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix index d476024553b..35dbf1fcb44 100644 --- a/pkgs/applications/misc/lutris/default.nix +++ b/pkgs/applications/misc/lutris/default.nix @@ -84,13 +84,12 @@ buildPythonApplication rec { sha256 = "sha256-rsiXm7L/M85ot6NrTyy//lMRFlLPJYve9y6Erg9Ugxg="; }; - nativeBuildInputs = [ wrapGAppsHook ]; + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; buildInputs = [ atk gdk-pixbuf glib-networking gnome-desktop - gobject-introspection gtk3 libnotify pango @@ -139,9 +138,6 @@ buildPythonApplication rec { "--prefix PATH : ${lib.makeBinPath requiredTools}" "\${gappsWrapperArgs[@]}" ]; - # needed for glib-schemas to work correctly (will crash on dialogues otherwise) - # see https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; meta = with lib; { homepage = "https://lutris.net"; diff --git a/pkgs/applications/misc/minigalaxy/default.nix b/pkgs/applications/misc/minigalaxy/default.nix index 743c92407e7..4dffe9e08eb 100644 --- a/pkgs/applications/misc/minigalaxy/default.nix +++ b/pkgs/applications/misc/minigalaxy/default.nix @@ -31,18 +31,14 @@ python3Packages.buildPythonApplication rec { runHook postCheck ''; - # Cannot find GSettings schemas when opening settings, - # probably https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - nativeBuildInputs = [ gettext wrapGAppsHook + gobject-introspection ]; buildInputs = [ glib-networking - gobject-introspection gtk3 ]; @@ -64,6 +60,7 @@ python3Packages.buildPythonApplication rec { ]; # Run Linux games using the Steam Runtime by using steam-run in the wrapper + # FIXME: not working with makeBinaryWrapper postFixup = '' sed -e 's#exec -a "$0"#exec -a "$0" ${steam-run}/bin/steam-run#' -i $out/bin/minigalaxy ''; diff --git a/pkgs/applications/misc/onboard/default.nix b/pkgs/applications/misc/onboard/default.nix index 472af0caf48..9d88d6331c1 100644 --- a/pkgs/applications/misc/onboard/default.nix +++ b/pkgs/applications/misc/onboard/default.nix @@ -108,9 +108,6 @@ python3.pkgs.buildPythonApplication rec { python3.pkgs.nose ]; - # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - doCheck = false; preBuild = '' diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix index 7ae8662e2c1..546c0544cff 100644 --- a/pkgs/applications/misc/printrun/default.nix +++ b/pkgs/applications/misc/printrun/default.nix @@ -32,8 +32,6 @@ python3Packages.buildPythonApplication rec { ''; dontWrapGApps = true; - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; preFixup = '' makeWrapperArgs+=("''${gappsWrapperArgs[@]}") diff --git a/pkgs/applications/misc/wike/default.nix b/pkgs/applications/misc/wike/default.nix index c3e5a505722..00cd8dcf051 100644 --- a/pkgs/applications/misc/wike/default.nix +++ b/pkgs/applications/misc/wike/default.nix @@ -12,7 +12,6 @@ python3.pkgs.buildPythonApplication rec { pname = "wike"; version = "1.7.1"; format = "other"; - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchFromGitHub { owner = "hugolabe"; diff --git a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix index f80be45ebd1..7563e8c22d7 100644 --- a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix +++ b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix @@ -66,9 +66,6 @@ python3.pkgs.buildPythonApplication rec { requests ]; - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - dontWrapGApps = true; preFixup = '' diff --git a/pkgs/applications/networking/giara/default.nix b/pkgs/applications/networking/giara/default.nix index 60c2ad8262c..3e10a61a63f 100644 --- a/pkgs/applications/networking/giara/default.nix +++ b/pkgs/applications/networking/giara/default.nix @@ -64,9 +64,6 @@ python3.pkgs.buildPythonApplication rec { --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" ''; - # Fix setup-hooks https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - meta = with lib; { description = "A Reddit app, built with Python, GTK and Handy; Created with mobile Linux in mind"; maintainers = with maintainers; [ dasj19 ]; diff --git a/pkgs/applications/networking/mailreaders/bubblemail/default.nix b/pkgs/applications/networking/mailreaders/bubblemail/default.nix index 61276220756..bd5783a5c65 100644 --- a/pkgs/applications/networking/mailreaders/bubblemail/default.nix +++ b/pkgs/applications/networking/mailreaders/bubblemail/default.nix @@ -13,6 +13,7 @@ , glib , gobject-introspection , folks +, bash }: python3Packages.buildPythonApplication rec { @@ -39,6 +40,7 @@ python3Packages.buildPythonApplication rec { libsecret gnome-online-accounts folks + bash ]; nativeBuildInputs = [ @@ -59,9 +61,6 @@ python3Packages.buildPythonApplication rec { # See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped dontWrapGApps = true; - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - preFixup = '' makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; diff --git a/pkgs/applications/networking/protonvpn-gui/default.nix b/pkgs/applications/networking/protonvpn-gui/default.nix index 98f7ac541a7..14844161d18 100644 --- a/pkgs/applications/networking/protonvpn-gui/default.nix +++ b/pkgs/applications/networking/protonvpn-gui/default.nix @@ -41,8 +41,6 @@ buildPythonApplication rec { ]; buildInputs = [ - # To avoid enabling strictDeps = false (#56943) - gobject-introspection librsvg pango webkitgtk diff --git a/pkgs/applications/office/gtg/default.nix b/pkgs/applications/office/gtg/default.nix index 8165cc381c1..44aaa6c7146 100644 --- a/pkgs/applications/office/gtg/default.nix +++ b/pkgs/applications/office/gtg/default.nix @@ -67,7 +67,6 @@ python3Packages.buildPythonApplication rec { ''; format = "other"; - strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943) checkPhase = "xvfb-run pytest ../tests/"; diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix index 73c94f7339c..c20c9449ae8 100644 --- a/pkgs/applications/office/zim/default.nix +++ b/pkgs/applications/office/zim/default.nix @@ -14,9 +14,8 @@ python3Packages.buildPythonApplication rec { sha256 = "sha256-iOF11/fhQYlvnpWJidJS1yJVavF7xLxvBl59VCh9A4U="; }; - buildInputs = [ gtk3 gobject-introspection gnome.adwaita-icon-theme ]; + buildInputs = [ gtk3 gnome.adwaita-icon-theme ]; propagatedBuildInputs = with python3Packages; [ pyxdg pygobject3 ]; - # see https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 nativeBuildInputs = [ gobject-introspection wrapGAppsHook ]; dontWrapGApps = true; diff --git a/pkgs/applications/science/misc/bada-bib/default.nix b/pkgs/applications/science/misc/bada-bib/default.nix index 76495f5cae1..7ad542402b5 100644 --- a/pkgs/applications/science/misc/bada-bib/default.nix +++ b/pkgs/applications/science/misc/bada-bib/default.nix @@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec { pname = "bada-bib"; version = "0.8.0"; format = "other"; - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchFromGitHub { owner = "RogerCrocker"; diff --git a/pkgs/applications/terminal-emulators/guake/default.nix b/pkgs/applications/terminal-emulators/guake/default.nix index ee28a250478..d030c7add96 100644 --- a/pkgs/applications/terminal-emulators/guake/default.nix +++ b/pkgs/applications/terminal-emulators/guake/default.nix @@ -26,11 +26,6 @@ python3.pkgs.buildPythonApplication rec { sha256 = "sha256-BW13fBH26UqMPMjV8JC4QkpgzyoPfCpAfSkJD68uOZU="; }; - # Strict deps breaks guake - # See https://github.com/NixOS/nixpkgs/issues/59930 - # and https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - nativeBuildInputs = [ gobject-introspection wrapGAppsHook diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix index 121a0cdf773..224efe8c1ac 100644 --- a/pkgs/applications/version-management/meld/default.nix +++ b/pkgs/applications/version-management/meld/default.nix @@ -52,10 +52,6 @@ python3.pkgs.buildPythonApplication rec { pycairo ]; - # gobject-introspection and some other similar setup hooks do not currently work with strictDeps. - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - postPatch = '' patchShebangs meson_shebang_normalisation.py ''; diff --git a/pkgs/applications/video/devede/default.nix b/pkgs/applications/video/devede/default.nix index e8fa11c9147..800edd4792c 100644 --- a/pkgs/applications/video/devede/default.nix +++ b/pkgs/applications/video/devede/default.nix @@ -15,17 +15,8 @@ in buildPythonApplication rec { sha256 = "1xb7acjphvn4ya8fgjsvag5gzi9a6c2famfl0ffr8nhb9y8ig9mg"; }; - # Temporary fix - # See https://github.com/NixOS/nixpkgs/issues/61578 - # and https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - nativeBuildInputs = [ gettext wrapGAppsHook - - # Temporary fix - # See https://github.com/NixOS/nixpkgs/issues/61578 - # and https://github.com/NixOS/nixpkgs/issues/56943 gobject-introspection ]; diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix index 4ba0fe98df0..e44949f54ba 100644 --- a/pkgs/applications/video/kazam/default.nix +++ b/pkgs/applications/video/kazam/default.nix @@ -40,9 +40,6 @@ python3Packages.buildPythonApplication rec { propagatedBuildInputs = with python3Packages; [ pygobject3 pyxdg pycairo dbus-python xlib ]; - # workaround https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - patches = [ # Fix paths (substituteAll { diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix index 5406b7dfa8a..7e6f89855ed 100644 --- a/pkgs/applications/video/pitivi/default.nix +++ b/pkgs/applications/video/pitivi/default.nix @@ -44,10 +44,10 @@ python3.pkgs.buildPythonApplication rec { itstool python3 wrapGAppsHook + gobject-introspection ]; buildInputs = [ - gobject-introspection gtk3 libpeas librsvg @@ -78,12 +78,6 @@ python3.pkgs.buildPythonApplication rec { patchShebangs ./getenvvar.py ''; - # Fixes error - # Couldn’t recognize the image file format for file ".../share/pitivi/pixmaps/asset-proxied.svg" - # at startup, see https://github.com/NixOS/nixpkgs/issues/56943 - # and https://github.com/NixOS/nixpkgs/issues/89691#issuecomment-714398705. - strictDeps = false; - passthru = { updateScript = gnome.updateScript { packageName = "pitivi"; diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix index e5d5a1fbfe7..1a9fe490af8 100644 --- a/pkgs/applications/virtualization/virt-manager/default.nix +++ b/pkgs/applications/virtualization/virt-manager/default.nix @@ -26,7 +26,6 @@ python3.pkgs.buildPythonApplication rec { wrapGAppsHook libvirt-glib vte dconf gtk-vnc gnome.adwaita-icon-theme avahi gsettings-desktop-schemas libosinfo gtksourceview4 - gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 ] ++ lib.optional spiceSupport spice-gtk; propagatedBuildInputs = with python3.pkgs; [ diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix index 99633a3c7c9..3c5199be313 100644 --- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix +++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix @@ -17,6 +17,24 @@ makeSetupHook { propagatedBuildInputs = [ # We use the wrapProgram function. makeWrapper + ] ++ lib.optionals isGraphical [ + # TODO: remove this, packages should depend on GTK explicitly. + gtk3 + + librsvg + ]; + + # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs + # the librsvg and gtk3 above should be removed but kept to not break anything that implicitly depended on its binaries + depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [ + # librsvg provides a module for gdk-pixbuf to allow rendering + # SVG icons. Most icon themes are SVG-based and so are some + # graphics in GTK (e.g. cross for closing window in window title bar) + # so it is pretty much required for applications using GTK. + librsvg + + # TODO: remove this, packages should depend on GTK explicitly. + gtk3 ] ++ lib.optionals (!stdenv.isDarwin) [ # It is highly probable that a program will use GSettings, # at minimum through GTK file chooser dialogue. @@ -26,22 +44,6 @@ makeSetupHook { # Unfortunately, it also requires the user to have dconf # D-Bus service enabled globally (e.g. through a NixOS module). dconf.lib - - ] ++ lib.optionals isGraphical [ - # TODO: remove this, packages should depend on GTK explicitly. - gtk3 - - librsvg - ]; - - # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs - # the librsvg above should be removed but kept to not break anything that implicitly depended on its binaries - depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [ - # librsvg provides a module for gdk-pixbuf to allow rendering - # SVG icons. Most icon themes are SVG-based and so are some - # graphics in GTK (e.g. cross for closing window in window title bar) - # so it is pretty much required for applications using GTK. - librsvg ]; passthru = { tests = let @@ -56,6 +58,7 @@ makeSetupHook { src = sample-project; + strictDeps = true; nativeBuildInputs = [ wrapGAppsHook ]; installFlags = [ "bin-foo" "libexec-bar" ]; @@ -86,6 +89,8 @@ makeSetupHook { src = sample-project; + strictDeps = true; + installFlags = [ "typelib-Mahjong" ]; }; @@ -95,6 +100,7 @@ makeSetupHook { src = sample-project; + strictDeps = true; nativeBuildInputs = [ gobject-introspection wrapGAppsHook @@ -126,6 +132,8 @@ makeSetupHook { src = sample-project; + strictDeps = true; + makeFlags = [ "LIBDIR=${placeholder "lib"}/lib" ]; @@ -139,6 +147,7 @@ makeSetupHook { src = sample-project; + strictDeps = true; nativeBuildInputs = [ gobject-introspection wrapGAppsHook @@ -169,6 +178,7 @@ makeSetupHook { src = sample-project; + strictDeps = true; nativeBuildInputs = [ gobject-introspection wrapGAppsHook diff --git a/pkgs/desktops/gnome/apps/accerciser/default.nix b/pkgs/desktops/gnome/apps/accerciser/default.nix index 7d4f5969d0d..d21d1c20061 100644 --- a/pkgs/desktops/gnome/apps/accerciser/default.nix +++ b/pkgs/desktops/gnome/apps/accerciser/default.nix @@ -13,6 +13,7 @@ , gettext , libwnck , adwaita-icon-theme +, librsvg }: python3.pkgs.buildPythonApplication rec { @@ -41,6 +42,7 @@ python3.pkgs.buildPythonApplication rec { at-spi2-core gtk3 libwnck + librsvg ]; propagatedBuildInputs = with python3.pkgs; [ @@ -52,10 +54,6 @@ python3.pkgs.buildPythonApplication rec { xlib ]; - # Strict deps breaks accerciser - # and https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - passthru = { updateScript = gnome.updateScript { packageName = "accerciser"; diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix index efad1cc14db..dbf3dbd9be3 100644 --- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix @@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec { pname = "gnome-tweaks"; version = "42.beta"; format = "other"; - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; diff --git a/pkgs/desktops/xfce/applications/catfish/default.nix b/pkgs/desktops/xfce/applications/catfish/default.nix index f78f420cabc..2f16352f8ca 100644 --- a/pkgs/desktops/xfce/applications/catfish/default.nix +++ b/pkgs/desktops/xfce/applications/catfish/default.nix @@ -41,7 +41,6 @@ python3Packages.buildPythonApplication rec { python3Packages.pyxdg python3Packages.ptyprocess python3Packages.pycairo - gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 ]; propagatedBuildInputs = [ diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index a78bf86a18c..57ed620fbf8 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -20,7 +20,9 @@ , python3Packages , gnome , vala -, withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform +, writeScript +, withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages +, buildPackages , gobject-introspection , _experimental-update-script-combinators , common-updater-scripts @@ -71,6 +73,7 @@ stdenv.mkDerivation rec { bzip2 pango libintl + vala # for share/vala/Makefile.vapigen ] ++ lib.optionals stdenv.isDarwin [ ApplicationServices Foundation @@ -93,6 +96,15 @@ stdenv.mkDerivation rec { doCheck = false; # all tests fail on libtool-generated rsvg-convert not being able to find coreutils + GDK_PIXBUF_QUERYLOADERS = writeScript "gdk-pixbuf-loader-loaders-wrapped" '' + ${lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) (stdenv.hostPlatform.emulator buildPackages)} ${lib.getDev gdk-pixbuf}/bin/gdk-pixbuf-query-loaders + ''; + + preConfigure = '' + PKG_CONFIG_VAPIGEN_VAPIGEN="$(type -p vapigen)" + export PKG_CONFIG_VAPIGEN_VAPIGEN + ''; + # It wants to add loaders and update the loaders.cache in gdk-pixbuf # Patching the Makefiles to it creates rsvg specific loaders and the # relevant loader.cache here. @@ -114,10 +126,14 @@ stdenv.mkDerivation rec { # 'error: linker `cc` not found' when cross-compiling export RUSTFLAGS="-Clinker=$CC" + '' + lib.optionalString ((stdenv.buildPlatform != stdenv.hostPlatform) && (stdenv.hostPlatform.emulatorAvailable buildPackages)) '' + # the replacement is the native conditional + substituteInPlace gdk-pixbuf-loader/Makefile \ + --replace 'RUN_QUERY_LOADER_TEST = false' 'RUN_QUERY_LOADER_TEST = test -z "$(DESTDIR)"' \ ''; # Not generated when cross compiling. - postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' + postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) '' # Merge gdkpixbuf and librsvg loaders cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache diff --git a/pkgs/development/python-modules/dogtail/default.nix b/pkgs/development/python-modules/dogtail/default.nix index cc4430ddb39..2f8a02dc3ec 100644 --- a/pkgs/development/python-modules/dogtail/default.nix +++ b/pkgs/development/python-modules/dogtail/default.nix @@ -37,7 +37,6 @@ buildPythonPackage { nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ]; - strictDeps = false; # issue 56943 checkPhase = '' runHook preCheck @@ -50,6 +49,12 @@ buildPythonPackage { runHook postCheck ''; + dontWrapGApps = true; + + preFixup = '' + makeWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; + # TODO: Tests require accessibility doCheck = false; diff --git a/pkgs/development/tools/cambalache/default.nix b/pkgs/development/tools/cambalache/default.nix index e2e7157425b..43a5778ff95 100644 --- a/pkgs/development/tools/cambalache/default.nix +++ b/pkgs/development/tools/cambalache/default.nix @@ -57,15 +57,16 @@ python3.pkgs.buildPythonApplication rec { libhandy ]; - # Not compatible with gobject-introspection setup hooks. - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - # Prevent double wrapping. dontWrapGApps = true; postPatch = '' patchShebangs postinstall.py + # those programs are used at runtime not build time + # https://gitlab.gnome.org/jpu/cambalache/-/blob/main/meson.build#L79-80 + substituteInPlace ./meson.build \ + --replace "find_program('broadwayd', required: true)" "" \ + --replace "find_program('gtk4-broadwayd', required: true)" "" ''; preFixup = '' diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix index d105dd61665..c59ed440b7c 100644 --- a/pkgs/development/tools/misc/d-feet/default.nix +++ b/pkgs/development/tools/misc/d-feet/default.nix @@ -63,10 +63,6 @@ python3.pkgs.buildPythonApplication rec { "-Dtests=false" # needs dbus ]; - # Temporary fix - # See https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - postPatch = '' chmod +x meson_post_install.py patchShebangs meson_post_install.py diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix index 0aeb5f2e963..11663d5d4c4 100644 --- a/pkgs/misc/drivers/sc-controller/default.nix +++ b/pkgs/misc/drivers/sc-controller/default.nix @@ -18,12 +18,9 @@ buildPythonApplication rec { sha256 = "sha256-ym5fkOTRhibBaUqT0+p/jyqqKOVsyMz5INgfkoz0IJA="; }; - # see https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; - nativeBuildInputs = [ wrapGAppsHook ]; - - buildInputs = [ gtk3 gobject-introspection libappindicator-gtk3 librsvg ]; + buildInputs = [ gtk3 libappindicator-gtk3 librsvg ]; propagatedBuildInputs = [ evdev pygobject3 pylibacl vdf ]; diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix index 121933f69e9..64ddfae7b32 100644 --- a/pkgs/misc/solfege/default.nix +++ b/pkgs/misc/solfege/default.nix @@ -35,13 +35,11 @@ buildPythonApplication rec { texinfo txt2man - # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 gobject-introspection wrapGAppsHook ]; buildInputs = [ - gobject-introspection gtk3 librsvg ]; diff --git a/pkgs/os-specific/linux/piper/default.nix b/pkgs/os-specific/linux/piper/default.nix index 293425897e9..39b0eaf5325 100644 --- a/pkgs/os-specific/linux/piper/default.nix +++ b/pkgs/os-specific/linux/piper/default.nix @@ -19,9 +19,7 @@ python3.pkgs.buildPythonApplication rec { buildInputs = [ gtk3 glib gnome.adwaita-icon-theme python3 librsvg ]; - propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ] ++ [ - gobject-introspection # fixes https://github.com/NixOS/nixpkgs/issues/56943 for now - ]; + propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ]; mesonFlags = [ "-Druntime-dependency-checks=false" diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix index 0d8303c0df4..6c4c89e8888 100644 --- a/pkgs/tools/X11/arandr/default.nix +++ b/pkgs/tools/X11/arandr/default.nix @@ -27,10 +27,6 @@ buildPythonApplication rec { # no tests doCheck = false; - # hook for gobject-introspection doesn't like strictDeps - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - buildInputs = [ docutils gsettings-desktop-schemas gtk3 ]; nativeBuildInputs = [ gobject-introspection wrapGAppsHook ]; propagatedBuildInputs = [ xrandr pygobject3 ]; diff --git a/pkgs/tools/audio/beets/common.nix b/pkgs/tools/audio/beets/common.nix index 4cfef4657e3..b3eefbf9cba 100644 --- a/pkgs/tools/audio/beets/common.nix +++ b/pkgs/tools/audio/beets/common.nix @@ -61,7 +61,6 @@ python3Packages.buildPythonApplication rec { propagatedBuildInputs = with python3Packages; [ confuse - gobject-introspection gst-python jellyfish mediafile @@ -74,7 +73,6 @@ python3Packages.buildPythonApplication rec { unidecode ] ++ (concatMap (p: p.propagatedBuildInputs) (attrValues enabledPlugins)); - # see: https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 nativeBuildInputs = [ gobject-introspection sphinxHook diff --git a/pkgs/tools/audio/mpdris2/default.nix b/pkgs/tools/audio/mpdris2/default.nix index a367da9828e..fd8618d6243 100644 --- a/pkgs/tools/audio/mpdris2/default.nix +++ b/pkgs/tools/audio/mpdris2/default.nix @@ -13,7 +13,6 @@ python3.pkgs.buildPythonApplication rec { pname = "mpDris2"; version = "0.9.1"; format = "other"; - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchFromGitHub { owner = "eonpatapon"; diff --git a/pkgs/tools/inputmethods/input-remapper/default.nix b/pkgs/tools/inputmethods/input-remapper/default.nix index c6941607683..092901e08c3 100644 --- a/pkgs/tools/inputmethods/input-remapper/default.nix +++ b/pkgs/tools/inputmethods/input-remapper/default.nix @@ -45,11 +45,6 @@ in hash = "sha256-KPQLgXSonuOgphagYN2JN+CMIpmjTIPUTCqOPDk0UYU="; }; - # Fixes error - # Couldn’t recognize the image file format for file "*.svg" - # at startup, see https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - postPatch = '' # fix FHS paths substituteInPlace inputremapper/configs/data.py \ diff --git a/pkgs/tools/misc/gaphor/default.nix b/pkgs/tools/misc/gaphor/default.nix index 95d9f911273..a97b887f1ca 100644 --- a/pkgs/tools/misc/gaphor/default.nix +++ b/pkgs/tools/misc/gaphor/default.nix @@ -37,11 +37,7 @@ buildPythonApplication rec { wrapGAppsHook ]; - # Setting gobject-introspection on booth nativeBuildInputs and - # buildInputs because of #56943. This recognizes pango, avoiding - # a "ValueError: Namespace PangoCairo not available". buildInputs = [ - gobject-introspection gtksourceview4 pango ]; diff --git a/pkgs/tools/misc/trackma/default.nix b/pkgs/tools/misc/trackma/default.nix index e3d6322b85e..855585dde3f 100644 --- a/pkgs/tools/misc/trackma/default.nix +++ b/pkgs/tools/misc/trackma/default.nix @@ -35,10 +35,10 @@ python3.pkgs.buildPythonApplication rec { }; nativeBuildInputs = [ copyDesktopItems ] - ++ lib.optionals withGTK [ wrapGAppsHook ] + ++ lib.optionals withGTK [ wrapGAppsHook gobject-introspection ] ++ lib.optionals withQT [ qt5.wrapQtAppsHook ]; - buildInputs = lib.optionals withGTK [ glib gobject-introspection gtk3 ]; + buildInputs = lib.optionals withGTK [ glib gtk3 ]; propagatedBuildInputs = with python3.pkgs; ([ urllib3 ] ++ lib.optionals withQT [ pyqt5 ] @@ -47,9 +47,6 @@ python3.pkgs.buildPythonApplication rec { ++ lib.optionals stdenv.isLinux [ dbus-python pygobject3 pyinotify ] ++ lib.optionals (withGTK || withQT) [ pillow ]); - # broken with gobject-introspection setup hook, see https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - dontWrapQtApps = true; dontWrapGApps = true; diff --git a/pkgs/tools/security/gnome-keysign/default.nix b/pkgs/tools/security/gnome-keysign/default.nix index 50a1ff98d14..f5157fc9e41 100644 --- a/pkgs/tools/security/gnome-keysign/default.nix +++ b/pkgs/tools/security/gnome-keysign/default.nix @@ -67,9 +67,6 @@ python3.pkgs.buildPythonApplication rec { twisted ]; - # https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - # bunch of linting doCheck = false; diff --git a/pkgs/tools/security/xsser/default.nix b/pkgs/tools/security/xsser/default.nix index 5028b3c7721..6c75f2e733f 100644 --- a/pkgs/tools/security/xsser/default.nix +++ b/pkgs/tools/security/xsser/default.nix @@ -22,10 +22,6 @@ buildPythonApplication rec { substituteInPlace setup.py --replace /usr/share share ''; - # Temporary fix - # See https://github.com/NixOS/nixpkgs/issues/56943 - strictDeps = false; - nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; buildInputs = [