lol

Merge pull request #215715 from Artturin/removegirworkarounds2


authored by

Artturi and committed by
GitHub
cdcca1cd 0e856cc7

+88 -185
-4
doc/languages-frameworks/gnome.section.md
··· 116 116 117 117 - []{#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`. 118 118 119 - ::: {.warning} 120 - 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;`. 121 - ::: 122 - 123 119 - []{#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`. 124 120 125 121 You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook:
+1 -4
pkgs/applications/audio/blanket/default.nix
··· 31 31 pkg-config 32 32 wrapGAppsHook4 33 33 desktop-file-utils 34 + gobject-introspection 34 35 ]; 35 36 36 37 buildInputs = [ 37 38 glib 38 39 gtk4 39 40 libadwaita 40 - gobject-introspection 41 41 gst_all_1.gstreamer 42 42 gst_all_1.gst-plugins-base 43 43 gst_all_1.gst-plugins-good ··· 48 48 pygobject3 49 49 ]; 50 50 51 - # Broken with gobject-introspection setup hook 52 - # https://github.com/NixOS/nixpkgs/issues/56943 53 - strictDeps = false; 54 51 format = "other"; 55 52 56 53 postPatch = ''
-5
pkgs/applications/audio/cozy/default.nix
··· 24 24 pname = "cozy"; 25 25 version = "1.2.1"; 26 26 27 - # Temporary fix 28 - # See https://github.com/NixOS/nixpkgs/issues/57029 29 - # and https://github.com/NixOS/nixpkgs/issues/56943 30 - strictDeps = false; 31 - 32 27 src = fetchFromGitHub { 33 28 owner = "geigi"; 34 29 repo = pname;
+1 -6
pkgs/applications/audio/gpodder/default.nix
··· 27 27 intltool 28 28 wrapGAppsHook 29 29 glibcLocales 30 + gobject-introspection 30 31 ]; 31 32 32 - # as of 2021-07, the gobject-introspection setup hook does not 33 - # work with `strictDeps` enabled, thus for proper `wrapGAppsHook` 34 - # it needs to be disabled explicitly. https://github.com/NixOS/nixpkgs/issues/56943 35 - strictDeps = false; 36 - 37 33 buildInputs = [ 38 34 python3 39 35 gtk3 40 - gobject-introspection 41 36 gnome.adwaita-icon-theme 42 37 ]; 43 38
-4
pkgs/applications/audio/sonata/default.nix
··· 39 39 setuptools 40 40 ]; 41 41 42 - # Otherwise the setup hook for gobject-introspection is not run: 43 - # https://github.com/NixOS/nixpkgs/issues/56943 44 - strictDeps = false; 45 - 46 42 postPatch = '' 47 43 # Remove "Local MPD" tab which is not suitable for NixOS. 48 44 sed -i '/localmpd/d' sonata/consts.py
-4
pkgs/applications/audio/sublime-music/default.nix
··· 75 75 ++ lib.optional serverSupport bottle 76 76 ; 77 77 78 - # hook for gobject-introspection doesn't like strictDeps 79 - # https://github.com/NixOS/nixpkgs/issues/56943 80 - strictDeps = false; 81 - 82 78 nativeCheckInputs = with python3Packages; [ 83 79 pytest 84 80 ];
-4
pkgs/applications/editors/rednotebook/default.nix
··· 30 30 "--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" 31 31 ]; 32 32 33 - # Until gobject-introspection in nativeBuildInputs is supported. 34 - # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-472568643 35 - strictDeps = false; 36 - 37 33 meta = with lib; { 38 34 homepage = "https://rednotebook.sourceforge.io/"; 39 35 changelog = "https://github.com/jendrikseipp/rednotebook/blob/v${version}/CHANGELOG.md";
+13 -7
pkgs/applications/graphics/curtail/default.nix
··· 37 37 meson 38 38 ninja 39 39 pkg-config 40 + gobject-introspection 40 41 ]; 41 42 42 - propagatedBuildInputs = [ 43 + buildInputs = [ 43 44 appstream-glib 44 - python3.pkgs.pygobject3 45 - gobject-introspection 46 45 gettext 46 + gtk3 47 47 ]; 48 48 49 - # Currently still required for the gobject-introspection setup hook 50 - strictDeps = false; 49 + propagatedBuildInputs = [ 50 + python3.pkgs.pygobject3 51 + ]; 51 52 52 53 preInstall = '' 53 54 patchShebangs ../build-aux/meson/postinstall.py 54 55 ''; 55 56 56 - postInstall = '' 57 - wrapProgram $out/bin/curtail --prefix PATH : ${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]} 57 + dontWrapGApps = true; 58 + 59 + preFixup = '' 60 + makeWrapperArgs+=( 61 + "''${gappsWrapperArgs[@]}" 62 + "--prefix" "PATH" ":" "${lib.makeBinPath [ jpegoptim libwebp optipng pngquant ]}" 63 + ) 58 64 ''; 59 65 60 66 meta = with lib; {
+2 -6
pkgs/applications/graphics/mcomix/default.nix
··· 25 25 hash = "sha256-Nok4oqTezO84q9IDZvgi33ZeKfRL+tpg7QEDmp2ZZpU="; 26 26 }; 27 27 28 - buildInputs = [ gobject-introspection gtk3 gdk-pixbuf ]; 29 - nativeBuildInputs = [ wrapGAppsHook ]; 28 + buildInputs = [ gtk3 gdk-pixbuf ]; 29 + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; 30 30 propagatedBuildInputs = (with python3.pkgs; [ pillow pygobject3 pycairo ]); 31 31 32 32 # Tests are broken 33 33 doCheck = false; 34 - 35 - # Correct wrapper behavior, see https://github.com/NixOS/nixpkgs/issues/56943 36 - # until https://github.com/NixOS/nixpkgs/pull/102613 37 - strictDeps = false; 38 34 39 35 # prevent double wrapping 40 36 dontWrapGApps = true;
-4
pkgs/applications/graphics/pick-colour-picker/default.nix
··· 37 37 gtk3 38 38 ]; 39 39 40 - # https://github.com/NixOS/nixpkgs/issues/56943 41 - # this must be false, otherwise the gobject-introspection hook doesn't run 42 - strictDeps = false; 43 - 44 40 preDistPhases = [ "fixupIconPath" ]; 45 41 46 42 fixupIconPath = ''
-1
pkgs/applications/misc/gnome-secrets/default.nix
··· 18 18 pname = "gnome-secrets"; 19 19 version = "7.2"; 20 20 format = "other"; 21 - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 22 21 23 22 src = fetchFromGitLab { 24 23 domain = "gitlab.gnome.org";
+2 -5
pkgs/applications/misc/hamster/default.nix
··· 1 - { lib, fetchFromGitHub, python3Packages, intltool, glib, itstool 1 + { lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3 2 2 , wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }: 3 3 4 4 python3Packages.buildPythonApplication rec { ··· 28 28 pango 29 29 gdk-pixbuf 30 30 atk 31 + gtk3 31 32 ]; 32 33 33 34 propagatedBuildInputs = with python3Packages; [ ··· 36 37 pyxdg 37 38 dbus-python 38 39 ]; 39 - 40 - # Setup hooks have trouble with strict deps. 41 - # https://github.com/NixOS/nixpkgs/issues/56943 42 - strictDeps = false; 43 40 44 41 dontWrapGApps = true; 45 42
+5 -5
pkgs/applications/misc/kupfer/default.nix
··· 11 11 , shared-mime-info 12 12 , wrapGAppsHook 13 13 , wafHook 14 + , bash 15 + , dbus 14 16 }: 15 17 16 18 with python3Packages; ··· 33 35 itstool # for help pages 34 36 desktop-file-utils # for update-desktop-database 35 37 shared-mime-info # for update-mime-info 38 + docutils # for rst2man 39 + dbus # for detection of dbus-send during build 36 40 ]; 37 - buildInputs = [ docutils libwnck keybinder3 ]; 41 + buildInputs = [ libwnck keybinder3 bash ]; 38 42 propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ]; 39 - 40 - # without strictDeps kupfer fails to build: Could not find the python module 'gi.repository.Gtk' 41 - # see https://github.com/NixOS/nixpkgs/issues/56943 for details 42 - strictDeps = false; 43 43 44 44 postInstall = '' 45 45 gappsWrapperArgs+=(
+1 -5
pkgs/applications/misc/lutris/default.nix
··· 84 84 sha256 = "sha256-rsiXm7L/M85ot6NrTyy//lMRFlLPJYve9y6Erg9Ugxg="; 85 85 }; 86 86 87 - nativeBuildInputs = [ wrapGAppsHook ]; 87 + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; 88 88 buildInputs = [ 89 89 atk 90 90 gdk-pixbuf 91 91 glib-networking 92 92 gnome-desktop 93 - gobject-introspection 94 93 gtk3 95 94 libnotify 96 95 pango ··· 139 138 "--prefix PATH : ${lib.makeBinPath requiredTools}" 140 139 "\${gappsWrapperArgs[@]}" 141 140 ]; 142 - # needed for glib-schemas to work correctly (will crash on dialogues otherwise) 143 - # see https://github.com/NixOS/nixpkgs/issues/56943 144 - strictDeps = false; 145 141 146 142 meta = with lib; { 147 143 homepage = "https://lutris.net";
+2 -5
pkgs/applications/misc/minigalaxy/default.nix
··· 31 31 runHook postCheck 32 32 ''; 33 33 34 - # Cannot find GSettings schemas when opening settings, 35 - # probably https://github.com/NixOS/nixpkgs/issues/56943 36 - strictDeps = false; 37 - 38 34 nativeBuildInputs = [ 39 35 gettext 40 36 wrapGAppsHook 37 + gobject-introspection 41 38 ]; 42 39 43 40 buildInputs = [ 44 41 glib-networking 45 - gobject-introspection 46 42 gtk3 47 43 ]; 48 44 ··· 64 60 ]; 65 61 66 62 # Run Linux games using the Steam Runtime by using steam-run in the wrapper 63 + # FIXME: not working with makeBinaryWrapper 67 64 postFixup = '' 68 65 sed -e 's#exec -a "$0"#exec -a "$0" ${steam-run}/bin/steam-run#' -i $out/bin/minigalaxy 69 66 '';
-3
pkgs/applications/misc/onboard/default.nix
··· 108 108 python3.pkgs.nose 109 109 ]; 110 110 111 - # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 112 - strictDeps = false; 113 - 114 111 doCheck = false; 115 112 116 113 preBuild = ''
-2
pkgs/applications/misc/printrun/default.nix
··· 32 32 ''; 33 33 34 34 dontWrapGApps = true; 35 - # https://github.com/NixOS/nixpkgs/issues/56943 36 - strictDeps = false; 37 35 38 36 preFixup = '' 39 37 makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
-1
pkgs/applications/misc/wike/default.nix
··· 12 12 pname = "wike"; 13 13 version = "1.7.1"; 14 14 format = "other"; 15 - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 16 15 17 16 src = fetchFromGitHub { 18 17 owner = "hugolabe";
-3
pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
··· 66 66 requests 67 67 ]; 68 68 69 - # https://github.com/NixOS/nixpkgs/issues/56943 70 - strictDeps = false; 71 - 72 69 dontWrapGApps = true; 73 70 74 71 preFixup = ''
-3
pkgs/applications/networking/giara/default.nix
··· 64 64 --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" 65 65 ''; 66 66 67 - # Fix setup-hooks https://github.com/NixOS/nixpkgs/issues/56943 68 - strictDeps = false; 69 - 70 67 meta = with lib; { 71 68 description = "A Reddit app, built with Python, GTK and Handy; Created with mobile Linux in mind"; 72 69 maintainers = with maintainers; [ dasj19 ];
+2 -3
pkgs/applications/networking/mailreaders/bubblemail/default.nix
··· 13 13 , glib 14 14 , gobject-introspection 15 15 , folks 16 + , bash 16 17 }: 17 18 18 19 python3Packages.buildPythonApplication rec { ··· 39 40 libsecret 40 41 gnome-online-accounts 41 42 folks 43 + bash 42 44 ]; 43 45 44 46 nativeBuildInputs = [ ··· 58 60 59 61 # See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped 60 62 dontWrapGApps = true; 61 - 62 - # https://github.com/NixOS/nixpkgs/issues/56943 63 - strictDeps = false; 64 63 65 64 preFixup = '' 66 65 makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
-2
pkgs/applications/networking/protonvpn-gui/default.nix
··· 41 41 ]; 42 42 43 43 buildInputs = [ 44 - # To avoid enabling strictDeps = false (#56943) 45 - gobject-introspection 46 44 librsvg 47 45 pango 48 46 webkitgtk
-1
pkgs/applications/office/gtg/default.nix
··· 67 67 ''; 68 68 69 69 format = "other"; 70 - strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943) 71 70 72 71 checkPhase = "xvfb-run pytest ../tests/"; 73 72
+1 -2
pkgs/applications/office/zim/default.nix
··· 14 14 sha256 = "sha256-iOF11/fhQYlvnpWJidJS1yJVavF7xLxvBl59VCh9A4U="; 15 15 }; 16 16 17 - buildInputs = [ gtk3 gobject-introspection gnome.adwaita-icon-theme ]; 17 + buildInputs = [ gtk3 gnome.adwaita-icon-theme ]; 18 18 propagatedBuildInputs = with python3Packages; [ pyxdg pygobject3 ]; 19 - # see https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 20 19 nativeBuildInputs = [ gobject-introspection wrapGAppsHook ]; 21 20 22 21 dontWrapGApps = true;
-1
pkgs/applications/science/misc/bada-bib/default.nix
··· 22 22 pname = "bada-bib"; 23 23 version = "0.8.0"; 24 24 format = "other"; 25 - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 26 25 27 26 src = fetchFromGitHub { 28 27 owner = "RogerCrocker";
-5
pkgs/applications/terminal-emulators/guake/default.nix
··· 26 26 sha256 = "sha256-BW13fBH26UqMPMjV8JC4QkpgzyoPfCpAfSkJD68uOZU="; 27 27 }; 28 28 29 - # Strict deps breaks guake 30 - # See https://github.com/NixOS/nixpkgs/issues/59930 31 - # and https://github.com/NixOS/nixpkgs/issues/56943 32 - strictDeps = false; 33 - 34 29 nativeBuildInputs = [ 35 30 gobject-introspection 36 31 wrapGAppsHook
-4
pkgs/applications/version-management/meld/default.nix
··· 52 52 pycairo 53 53 ]; 54 54 55 - # gobject-introspection and some other similar setup hooks do not currently work with strictDeps. 56 - # https://github.com/NixOS/nixpkgs/issues/56943 57 - strictDeps = false; 58 - 59 55 postPatch = '' 60 56 patchShebangs meson_shebang_normalisation.py 61 57 '';
-9
pkgs/applications/video/devede/default.nix
··· 15 15 sha256 = "1xb7acjphvn4ya8fgjsvag5gzi9a6c2famfl0ffr8nhb9y8ig9mg"; 16 16 }; 17 17 18 - # Temporary fix 19 - # See https://github.com/NixOS/nixpkgs/issues/61578 20 - # and https://github.com/NixOS/nixpkgs/issues/56943 21 - strictDeps = false; 22 - 23 18 nativeBuildInputs = [ 24 19 gettext wrapGAppsHook 25 - 26 - # Temporary fix 27 - # See https://github.com/NixOS/nixpkgs/issues/61578 28 - # and https://github.com/NixOS/nixpkgs/issues/56943 29 20 gobject-introspection 30 21 ]; 31 22
-3
pkgs/applications/video/kazam/default.nix
··· 40 40 41 41 propagatedBuildInputs = with python3Packages; [ pygobject3 pyxdg pycairo dbus-python xlib ]; 42 42 43 - # workaround https://github.com/NixOS/nixpkgs/issues/56943 44 - strictDeps = false; 45 - 46 43 patches = [ 47 44 # Fix paths 48 45 (substituteAll {
+1 -7
pkgs/applications/video/pitivi/default.nix
··· 44 44 itstool 45 45 python3 46 46 wrapGAppsHook 47 + gobject-introspection 47 48 ]; 48 49 49 50 buildInputs = [ 50 - gobject-introspection 51 51 gtk3 52 52 libpeas 53 53 librsvg ··· 77 77 postPatch = '' 78 78 patchShebangs ./getenvvar.py 79 79 ''; 80 - 81 - # Fixes error 82 - # Couldn’t recognize the image file format for file ".../share/pitivi/pixmaps/asset-proxied.svg" 83 - # at startup, see https://github.com/NixOS/nixpkgs/issues/56943 84 - # and https://github.com/NixOS/nixpkgs/issues/89691#issuecomment-714398705. 85 - strictDeps = false; 86 80 87 81 passthru = { 88 82 updateScript = gnome.updateScript {
-1
pkgs/applications/virtualization/virt-manager/default.nix
··· 26 26 wrapGAppsHook 27 27 libvirt-glib vte dconf gtk-vnc gnome.adwaita-icon-theme avahi 28 28 gsettings-desktop-schemas libosinfo gtksourceview4 29 - gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 30 29 ] ++ lib.optional spiceSupport spice-gtk; 31 30 32 31 propagatedBuildInputs = with python3.pkgs; [
+21 -11
pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
··· 17 17 propagatedBuildInputs = [ 18 18 # We use the wrapProgram function. 19 19 makeWrapper 20 - ] ++ lib.optionals (!stdenv.isDarwin) [ 21 - # It is highly probable that a program will use GSettings, 22 - # at minimum through GTK file chooser dialogue. 23 - # Let’s add a GIO module for “dconf” GSettings backend 24 - # to avoid falling back to “memory” backend. This is 25 - # required for GSettings-based settings to be persisted. 26 - # Unfortunately, it also requires the user to have dconf 27 - # D-Bus service enabled globally (e.g. through a NixOS module). 28 - dconf.lib 29 - 30 20 ] ++ lib.optionals isGraphical [ 31 21 # TODO: remove this, packages should depend on GTK explicitly. 32 22 gtk3 ··· 35 25 ]; 36 26 37 27 # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs 38 - # the librsvg above should be removed but kept to not break anything that implicitly depended on its binaries 28 + # the librsvg and gtk3 above should be removed but kept to not break anything that implicitly depended on its binaries 39 29 depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [ 40 30 # librsvg provides a module for gdk-pixbuf to allow rendering 41 31 # SVG icons. Most icon themes are SVG-based and so are some 42 32 # graphics in GTK (e.g. cross for closing window in window title bar) 43 33 # so it is pretty much required for applications using GTK. 44 34 librsvg 35 + 36 + # TODO: remove this, packages should depend on GTK explicitly. 37 + gtk3 38 + ] ++ lib.optionals (!stdenv.isDarwin) [ 39 + # It is highly probable that a program will use GSettings, 40 + # at minimum through GTK file chooser dialogue. 41 + # Let’s add a GIO module for “dconf” GSettings backend 42 + # to avoid falling back to “memory” backend. This is 43 + # required for GSettings-based settings to be persisted. 44 + # Unfortunately, it also requires the user to have dconf 45 + # D-Bus service enabled globally (e.g. through a NixOS module). 46 + dconf.lib 45 47 ]; 46 48 passthru = { 47 49 tests = let ··· 56 58 57 59 src = sample-project; 58 60 61 + strictDeps = true; 59 62 nativeBuildInputs = [ wrapGAppsHook ]; 60 63 61 64 installFlags = [ "bin-foo" "libexec-bar" ]; ··· 86 89 87 90 src = sample-project; 88 91 92 + strictDeps = true; 93 + 89 94 installFlags = [ "typelib-Mahjong" ]; 90 95 }; 91 96 ··· 95 100 96 101 src = sample-project; 97 102 103 + strictDeps = true; 98 104 nativeBuildInputs = [ 99 105 gobject-introspection 100 106 wrapGAppsHook ··· 126 132 127 133 src = sample-project; 128 134 135 + strictDeps = true; 136 + 129 137 makeFlags = [ 130 138 "LIBDIR=${placeholder "lib"}/lib" 131 139 ]; ··· 139 147 140 148 src = sample-project; 141 149 150 + strictDeps = true; 142 151 nativeBuildInputs = [ 143 152 gobject-introspection 144 153 wrapGAppsHook ··· 169 178 170 179 src = sample-project; 171 180 181 + strictDeps = true; 172 182 nativeBuildInputs = [ 173 183 gobject-introspection 174 184 wrapGAppsHook
+2 -4
pkgs/desktops/gnome/apps/accerciser/default.nix
··· 13 13 , gettext 14 14 , libwnck 15 15 , adwaita-icon-theme 16 + , librsvg 16 17 }: 17 18 18 19 python3.pkgs.buildPythonApplication rec { ··· 41 42 at-spi2-core 42 43 gtk3 43 44 libwnck 45 + librsvg 44 46 ]; 45 47 46 48 propagatedBuildInputs = with python3.pkgs; [ ··· 51 53 setuptools 52 54 xlib 53 55 ]; 54 - 55 - # Strict deps breaks accerciser 56 - # and https://github.com/NixOS/nixpkgs/issues/56943 57 - strictDeps = false; 58 56 59 57 passthru = { 60 58 updateScript = gnome.updateScript {
-1
pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
··· 22 22 pname = "gnome-tweaks"; 23 23 version = "42.beta"; 24 24 format = "other"; 25 - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 26 25 27 26 src = fetchurl { 28 27 url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-1
pkgs/desktops/xfce/applications/catfish/default.nix
··· 41 41 python3Packages.pyxdg 42 42 python3Packages.ptyprocess 43 43 python3Packages.pycairo 44 - gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 45 44 ]; 46 45 47 46 propagatedBuildInputs = [
+18 -2
pkgs/development/libraries/librsvg/default.nix
··· 20 20 , python3Packages 21 21 , gnome 22 22 , vala 23 - , withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform 23 + , writeScript 24 + , withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages 25 + , buildPackages 24 26 , gobject-introspection 25 27 , _experimental-update-script-combinators 26 28 , common-updater-scripts ··· 71 73 bzip2 72 74 pango 73 75 libintl 76 + vala # for share/vala/Makefile.vapigen 74 77 ] ++ lib.optionals stdenv.isDarwin [ 75 78 ApplicationServices 76 79 Foundation ··· 93 96 94 97 doCheck = false; # all tests fail on libtool-generated rsvg-convert not being able to find coreutils 95 98 99 + GDK_PIXBUF_QUERYLOADERS = writeScript "gdk-pixbuf-loader-loaders-wrapped" '' 100 + ${lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) (stdenv.hostPlatform.emulator buildPackages)} ${lib.getDev gdk-pixbuf}/bin/gdk-pixbuf-query-loaders 101 + ''; 102 + 103 + preConfigure = '' 104 + PKG_CONFIG_VAPIGEN_VAPIGEN="$(type -p vapigen)" 105 + export PKG_CONFIG_VAPIGEN_VAPIGEN 106 + ''; 107 + 96 108 # It wants to add loaders and update the loaders.cache in gdk-pixbuf 97 109 # Patching the Makefiles to it creates rsvg specific loaders and the 98 110 # relevant loader.cache here. ··· 114 126 115 127 # 'error: linker `cc` not found' when cross-compiling 116 128 export RUSTFLAGS="-Clinker=$CC" 129 + '' + lib.optionalString ((stdenv.buildPlatform != stdenv.hostPlatform) && (stdenv.hostPlatform.emulatorAvailable buildPackages)) '' 130 + # the replacement is the native conditional 131 + substituteInPlace gdk-pixbuf-loader/Makefile \ 132 + --replace 'RUN_QUERY_LOADER_TEST = false' 'RUN_QUERY_LOADER_TEST = test -z "$(DESTDIR)"' \ 117 133 ''; 118 134 119 135 # Not generated when cross compiling. 120 - postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' 136 + postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) '' 121 137 # Merge gdkpixbuf and librsvg loaders 122 138 cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp 123 139 mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
+6 -1
pkgs/development/python-modules/dogtail/default.nix
··· 37 37 38 38 nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks 39 39 propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ]; 40 - strictDeps = false; # issue 56943 41 40 42 41 checkPhase = '' 43 42 runHook preCheck ··· 48 47 --config-file=${dbus}/share/dbus-1/session.conf \ 49 48 ${python.interpreter} nix_run_setup test 50 49 runHook postCheck 50 + ''; 51 + 52 + dontWrapGApps = true; 53 + 54 + preFixup = '' 55 + makeWrapperArgs+=("''${gappsWrapperArgs[@]}") 51 56 ''; 52 57 53 58 # TODO: Tests require accessibility
+5 -4
pkgs/development/tools/cambalache/default.nix
··· 57 57 libhandy 58 58 ]; 59 59 60 - # Not compatible with gobject-introspection setup hooks. 61 - # https://github.com/NixOS/nixpkgs/issues/56943 62 - strictDeps = false; 63 - 64 60 # Prevent double wrapping. 65 61 dontWrapGApps = true; 66 62 67 63 postPatch = '' 68 64 patchShebangs postinstall.py 65 + # those programs are used at runtime not build time 66 + # https://gitlab.gnome.org/jpu/cambalache/-/blob/main/meson.build#L79-80 67 + substituteInPlace ./meson.build \ 68 + --replace "find_program('broadwayd', required: true)" "" \ 69 + --replace "find_program('gtk4-broadwayd', required: true)" "" 69 70 ''; 70 71 71 72 preFixup = ''
-4
pkgs/development/tools/misc/d-feet/default.nix
··· 63 63 "-Dtests=false" # needs dbus 64 64 ]; 65 65 66 - # Temporary fix 67 - # See https://github.com/NixOS/nixpkgs/issues/56943 68 - strictDeps = false; 69 - 70 66 postPatch = '' 71 67 chmod +x meson_post_install.py 72 68 patchShebangs meson_post_install.py
+2 -5
pkgs/misc/drivers/sc-controller/default.nix
··· 18 18 sha256 = "sha256-ym5fkOTRhibBaUqT0+p/jyqqKOVsyMz5INgfkoz0IJA="; 19 19 }; 20 20 21 - # see https://github.com/NixOS/nixpkgs/issues/56943 22 - strictDeps = false; 21 + nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; 23 22 24 - nativeBuildInputs = [ wrapGAppsHook ]; 25 - 26 - buildInputs = [ gtk3 gobject-introspection libappindicator-gtk3 librsvg ]; 23 + buildInputs = [ gtk3 libappindicator-gtk3 librsvg ]; 27 24 28 25 propagatedBuildInputs = [ evdev pygobject3 pylibacl vdf ]; 29 26
-2
pkgs/misc/solfege/default.nix
··· 35 35 texinfo 36 36 txt2man 37 37 38 - # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 39 38 gobject-introspection 40 39 wrapGAppsHook 41 40 ]; 42 41 43 42 buildInputs = [ 44 - gobject-introspection 45 43 gtk3 46 44 librsvg 47 45 ];
+1 -3
pkgs/os-specific/linux/piper/default.nix
··· 19 19 buildInputs = [ 20 20 gtk3 glib gnome.adwaita-icon-theme python3 librsvg 21 21 ]; 22 - propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ] ++ [ 23 - gobject-introspection # fixes https://github.com/NixOS/nixpkgs/issues/56943 for now 24 - ]; 22 + propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ]; 25 23 26 24 mesonFlags = [ 27 25 "-Druntime-dependency-checks=false"
-4
pkgs/tools/X11/arandr/default.nix
··· 27 27 # no tests 28 28 doCheck = false; 29 29 30 - # hook for gobject-introspection doesn't like strictDeps 31 - # https://github.com/NixOS/nixpkgs/issues/56943 32 - strictDeps = false; 33 - 34 30 buildInputs = [ docutils gsettings-desktop-schemas gtk3 ]; 35 31 nativeBuildInputs = [ gobject-introspection wrapGAppsHook ]; 36 32 propagatedBuildInputs = [ xrandr pygobject3 ];
-2
pkgs/tools/audio/beets/common.nix
··· 61 61 62 62 propagatedBuildInputs = with python3Packages; [ 63 63 confuse 64 - gobject-introspection 65 64 gst-python 66 65 jellyfish 67 66 mediafile ··· 74 73 unidecode 75 74 ] ++ (concatMap (p: p.propagatedBuildInputs) (attrValues enabledPlugins)); 76 75 77 - # see: https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663 78 76 nativeBuildInputs = [ 79 77 gobject-introspection 80 78 sphinxHook
-1
pkgs/tools/audio/mpdris2/default.nix
··· 13 13 pname = "mpDris2"; 14 14 version = "0.9.1"; 15 15 format = "other"; 16 - strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 17 16 18 17 src = fetchFromGitHub { 19 18 owner = "eonpatapon";
-5
pkgs/tools/inputmethods/input-remapper/default.nix
··· 45 45 hash = "sha256-KPQLgXSonuOgphagYN2JN+CMIpmjTIPUTCqOPDk0UYU="; 46 46 }; 47 47 48 - # Fixes error 49 - # Couldn’t recognize the image file format for file "*.svg" 50 - # at startup, see https://github.com/NixOS/nixpkgs/issues/56943 51 - strictDeps = false; 52 - 53 48 postPatch = '' 54 49 # fix FHS paths 55 50 substituteInPlace inputremapper/configs/data.py \
-4
pkgs/tools/misc/gaphor/default.nix
··· 37 37 wrapGAppsHook 38 38 ]; 39 39 40 - # Setting gobject-introspection on booth nativeBuildInputs and 41 - # buildInputs because of #56943. This recognizes pango, avoiding 42 - # a "ValueError: Namespace PangoCairo not available". 43 40 buildInputs = [ 44 - gobject-introspection 45 41 gtksourceview4 46 42 pango 47 43 ];
+2 -5
pkgs/tools/misc/trackma/default.nix
··· 35 35 }; 36 36 37 37 nativeBuildInputs = [ copyDesktopItems ] 38 - ++ lib.optionals withGTK [ wrapGAppsHook ] 38 + ++ lib.optionals withGTK [ wrapGAppsHook gobject-introspection ] 39 39 ++ lib.optionals withQT [ qt5.wrapQtAppsHook ]; 40 40 41 - buildInputs = lib.optionals withGTK [ glib gobject-introspection gtk3 ]; 41 + buildInputs = lib.optionals withGTK [ glib gtk3 ]; 42 42 43 43 propagatedBuildInputs = with python3.pkgs; ([ urllib3 ] 44 44 ++ lib.optionals withQT [ pyqt5 ] ··· 46 46 ++ lib.optionals withCurses [ urwid ] 47 47 ++ lib.optionals stdenv.isLinux [ dbus-python pygobject3 pyinotify ] 48 48 ++ lib.optionals (withGTK || withQT) [ pillow ]); 49 - 50 - # broken with gobject-introspection setup hook, see https://github.com/NixOS/nixpkgs/issues/56943 51 - strictDeps = false; 52 49 53 50 dontWrapQtApps = true; 54 51 dontWrapGApps = true;
-3
pkgs/tools/security/gnome-keysign/default.nix
··· 67 67 twisted 68 68 ]; 69 69 70 - # https://github.com/NixOS/nixpkgs/issues/56943 71 - strictDeps = false; 72 - 73 70 # bunch of linting 74 71 doCheck = false; 75 72
-4
pkgs/tools/security/xsser/default.nix
··· 22 22 substituteInPlace setup.py --replace /usr/share share 23 23 ''; 24 24 25 - # Temporary fix 26 - # See https://github.com/NixOS/nixpkgs/issues/56943 27 - strictDeps = false; 28 - 29 25 nativeBuildInputs = [ wrapGAppsHook gobject-introspection ]; 30 26 31 27 buildInputs = [