shell.nix 793 B

12345678910111213141516171819202122232425262728293031323334
  1. # shell.nix
  2. { pkgs ? import <nixpkgs> {} }:
  3. pkgs.mkShell {
  4. packages = with pkgs; [
  5. gcc
  6. pkg-config
  7. meson
  8. ninja
  9. gtk4
  10. gtkmm4
  11. sqlite
  12. openssl
  13. tinyxml-2
  14. libzip
  15. poppler
  16. flatpak-builder
  17. # runtime data GTK needs
  18. adwaita-icon-theme
  19. hicolor-icon-theme
  20. gsettings-desktop-schemas
  21. shared-mime-info
  22. librsvg
  23. ];
  24. shellHook = ''
  25. # GSettings schemas
  26. export GSETTINGS_SCHEMA_DIR=${pkgs.gsettings-desktop-schemas}/share/glib-2.0/schemas
  27. # Prepend icon/theme/mime dirs; note the Nix-escaped Bash expansion: ''${...}
  28. export XDG_DATA_DIRS=${pkgs.adwaita-icon-theme}/share:${pkgs.hicolor-icon-theme}/share:${pkgs.gsettings-desktop-schemas}/share:${pkgs.shared-mime-info}/share''${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS
  29. '';
  30. }