Fix the following launch failure:
ImportError
Failed to initialize GTK. If you are running over ssh, did you enable X forwarding and start ssh with -X?
(Typelib file for namespace 'GObject', version '2.0' not found)
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.
Not using simply stdenv = gcc12Stdenv due to errors like this:
/nix/store/...-binutils-2.40/bin/ld: /nix/store/...-boost-1.81.0/lib/libboost_program_options.so.1.81.0: undefined reference to `std::ios_base_library_init()@GLIBCXX_3.4.32'
collect2: error: ld returned 1 exit status
make[2]: *** [gr-fec/lib/reed-solomon/CMakeFiles/gr_fec_rstest.dir/build.make:131: gr-fec/lib/reed-solomon/gr_fec_rstest] Error 1
make[1]: *** [CMakeFiles/Makefile2:2165: gr-fec/lib/reed-solomon/CMakeFiles/gr_fec_rstest.dir/all] Error 2
cppzmq is a header-only library. As such, it is not much useful
without zeromq, whose headers it includes. By having zeromq in
propagatedBuildInputs, we can simplify dependent expressions.
This change is motivated by
https://github.com/lopsided98/nix-ros-overlay/issues/255#issuecomment-1487590226.
The expressions in nix-ros-overlay are automatically generated and
since packages in other distributions where ROS runs need not to
explicitly depend on zeromq, the Nix expression should behave the
same. This way, nix-ros-overlay will not to have manually
patch/overlay the automatically generated expressions.