treewide: remove issue #56943 workarounds

checked with diffoscope+difflog and launching the programs

i have fixed that issue in my other gir PRs

Artturin cadffcfe fa169bb2

Changed files
+32 -168
doc
languages-frameworks
pkgs
applications
audio
blanket
cozy
gpodder
sonata
sublime-music
editors
rednotebook
graphics
curtail
mcomix
pick-colour-picker
misc
gnome-secrets
hamster
kupfer
lutris
minigalaxy
onboard
printrun
wike
networking
feedreaders
gnome-feeds
giara
mailreaders
bubblemail
protonvpn-gui
office
science
misc
bada-bib
terminal-emulators
guake
version-management
video
devede
kazam
pitivi
virtualization
virt-manager
desktops
gnome
apps
accerciser
misc
gnome-tweaks
xfce
applications
catfish
development
tools
cambalache
misc
d-feet
misc
drivers
sc-controller
solfege
os-specific
linux
piper
tools
X11
arandr
audio
beets
mpdris2
inputmethods
input-remapper
misc
gaphor
trackma
security
gnome-keysign
xsser
-4
doc/languages-frameworks/gnome.section.md
···
- []{#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:
+1 -4
pkgs/applications/audio/blanket/default.nix
···
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
···
pygobject3
];
-
# Broken with gobject-introspection setup hook
-
# https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
format = "other";
postPatch = ''
-5
pkgs/applications/audio/cozy/default.nix
···
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;
+1 -6
pkgs/applications/audio/gpodder/default.nix
···
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
];
-4
pkgs/applications/audio/sonata/default.nix
···
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
-4
pkgs/applications/audio/sublime-music/default.nix
···
++ 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
];
-4
pkgs/applications/editors/rednotebook/default.nix
···
"--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";
+2 -4
pkgs/applications/graphics/curtail/default.nix
···
meson
ninja
pkg-config
+
gobject-introspection
];
propagatedBuildInputs = [
appstream-glib
python3.pkgs.pygobject3
-
gobject-introspection
gettext
+
gtk3
];
-
-
# Currently still required for the gobject-introspection setup hook
-
strictDeps = false;
preInstall = ''
patchShebangs ../build-aux/meson/postinstall.py
+2 -6
pkgs/applications/graphics/mcomix/default.nix
···
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;
-4
pkgs/applications/graphics/pick-colour-picker/default.nix
···
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 = ''
-1
pkgs/applications/misc/gnome-secrets/default.nix
···
pname = "gnome-secrets";
version = "7.2";
format = "other";
-
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
+2 -5
pkgs/applications/misc/hamster/default.nix
···
-
{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool
+
{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3
, wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }:
python3Packages.buildPythonApplication rec {
···
pango
gdk-pixbuf
atk
+
gtk3
];
propagatedBuildInputs = with python3Packages; [
···
pyxdg
dbus-python
];
-
-
# Setup hooks have trouble with strict deps.
-
# https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
dontWrapGApps = true;
+5 -5
pkgs/applications/misc/kupfer/default.nix
···
, shared-mime-info
, wrapGAppsHook
, wafHook
+
, bash
+
, dbus
}:
with python3Packages;
···
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+=(
+1 -5
pkgs/applications/misc/lutris/default.nix
···
sha256 = "sha256-rsiXm7L/M85ot6NrTyy//lMRFlLPJYve9y6Erg9Ugxg=";
};
-
nativeBuildInputs = [ wrapGAppsHook ];
+
nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
buildInputs = [
atk
gdk-pixbuf
glib-networking
gnome-desktop
-
gobject-introspection
gtk3
libnotify
pango
···
"--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";
+2 -5
pkgs/applications/misc/minigalaxy/default.nix
···
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
];
···
];
# 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
'';
-3
pkgs/applications/misc/onboard/default.nix
···
python3.pkgs.nose
];
-
# Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
-
doCheck = false;
preBuild = ''
-2
pkgs/applications/misc/printrun/default.nix
···
'';
dontWrapGApps = true;
-
# https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
-1
pkgs/applications/misc/wike/default.nix
···
pname = "wike";
version = "1.7.1";
format = "other";
-
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "hugolabe";
-3
pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
···
requests
];
-
# https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
-
dontWrapGApps = true;
preFixup = ''
-3
pkgs/applications/networking/giara/default.nix
···
--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 ];
+2 -3
pkgs/applications/networking/mailreaders/bubblemail/default.nix
···
, glib
, gobject-introspection
, folks
+
, bash
}:
python3Packages.buildPythonApplication rec {
···
libsecret
gnome-online-accounts
folks
+
bash
];
nativeBuildInputs = [
···
# 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[@]}")
-2
pkgs/applications/networking/protonvpn-gui/default.nix
···
];
buildInputs = [
-
# To avoid enabling strictDeps = false (#56943)
-
gobject-introspection
librsvg
pango
webkitgtk
-1
pkgs/applications/office/gtg/default.nix
···
'';
format = "other";
-
strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943)
checkPhase = "xvfb-run pytest ../tests/";
+1 -2
pkgs/applications/office/zim/default.nix
···
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;
-1
pkgs/applications/science/misc/bada-bib/default.nix
···
pname = "bada-bib";
version = "0.8.0";
format = "other";
-
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "RogerCrocker";
-5
pkgs/applications/terminal-emulators/guake/default.nix
···
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
-4
pkgs/applications/version-management/meld/default.nix
···
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
'';
-9
pkgs/applications/video/devede/default.nix
···
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
];
-3
pkgs/applications/video/kazam/default.nix
···
propagatedBuildInputs = with python3Packages; [ pygobject3 pyxdg pycairo dbus-python xlib ];
-
# workaround https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
-
patches = [
# Fix paths
(substituteAll {
+1 -7
pkgs/applications/video/pitivi/default.nix
···
itstool
python3
wrapGAppsHook
+
gobject-introspection
];
buildInputs = [
-
gobject-introspection
gtk3
libpeas
librsvg
···
postPatch = ''
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 {
-1
pkgs/applications/virtualization/virt-manager/default.nix
···
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; [
+2 -4
pkgs/desktops/gnome/apps/accerciser/default.nix
···
, gettext
, libwnck
, adwaita-icon-theme
+
, librsvg
}:
python3.pkgs.buildPythonApplication rec {
···
at-spi2-core
gtk3
libwnck
+
librsvg
];
propagatedBuildInputs = with python3.pkgs; [
···
setuptools
xlib
];
-
-
# Strict deps breaks accerciser
-
# and https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
passthru = {
updateScript = gnome.updateScript {
-1
pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
···
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";
-1
pkgs/desktops/xfce/applications/catfish/default.nix
···
python3Packages.pyxdg
python3Packages.ptyprocess
python3Packages.pycairo
-
gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
];
propagatedBuildInputs = [
+5 -4
pkgs/development/tools/cambalache/default.nix
···
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 = ''
-4
pkgs/development/tools/misc/d-feet/default.nix
···
"-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
+2 -5
pkgs/misc/drivers/sc-controller/default.nix
···
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 ];
-2
pkgs/misc/solfege/default.nix
···
texinfo
txt2man
-
# https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
gobject-introspection
wrapGAppsHook
];
buildInputs = [
-
gobject-introspection
gtk3
librsvg
];
+1 -3
pkgs/os-specific/linux/piper/default.nix
···
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"
-4
pkgs/tools/X11/arandr/default.nix
···
# 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 ];
-2
pkgs/tools/audio/beets/common.nix
···
propagatedBuildInputs = with python3Packages; [
confuse
-
gobject-introspection
gst-python
jellyfish
mediafile
···
unidecode
] ++ (concatMap (p: p.propagatedBuildInputs) (attrValues enabledPlugins));
-
# see: https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
nativeBuildInputs = [
gobject-introspection
sphinxHook
-1
pkgs/tools/audio/mpdris2/default.nix
···
pname = "mpDris2";
version = "0.9.1";
format = "other";
-
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "eonpatapon";
-5
pkgs/tools/inputmethods/input-remapper/default.nix
···
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 \
-4
pkgs/tools/misc/gaphor/default.nix
···
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
];
+2 -5
pkgs/tools/misc/trackma/default.nix
···
};
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 ]
···
++ lib.optionals withCurses [ urwid ]
++ 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;
-3
pkgs/tools/security/gnome-keysign/default.nix
···
twisted
];
-
# https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
-
# bunch of linting
doCheck = false;
-4
pkgs/tools/security/xsser/default.nix
···
substituteInPlace setup.py --replace /usr/share share
'';
-
# Temporary fix
-
# See https://github.com/NixOS/nixpkgs/issues/56943
-
strictDeps = false;
-
nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
buildInputs = [