* Tell the build system where it can install Python files, with the
PYTHONDIR environment variable. Without this it tries to install to
the existing python3 store path, which fails:
waflib.Errors.WafError: Could not create the directory /nix/store/HASH-python3-VERSION/lib/pythonX.Y/site-packages/hamster
* Add setuptools as runtime dependency to prevent this fatal runtime
error since Python 3.12:
ModuleNotFoundError: No module named 'distutils'
This was achieved using the following command:
sd 'wrapGAppsHook\b' wrapGAppsHook3 (rg -l 'wrapGAppsHook\b')
And then manually reverted the following changes:
- alias in top-level.nix
- function name in wrap-gapps-hook.sh
- comment in postFixup of at-spi2-core
- comment in gtk4
- comment in preFixup of 1password-gui/linux.nix
- comment in postFixup of qgis/unwrapped-ltr.nix and qgis/unwrapped.nix
- comment in postFixup of telegram-desktop
- comment in postFixup of fwupd
- buildCommand of mongodb-compass
- postFixup of xflux-gui
- comment in a patch in kdePackages.kde-gtk-config and plasma5Packages.kde-gtk-config
- description of programs.sway.wrapperFeatures.gtk NixOS option (manual rebuild)
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.