Export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:

I run the command

[artem@nixos:~]$ qs -c ii
  INFO: Launching config: "/home/artem/.config/quickshell/ii/shell.qml"
  INFO: Shell ID: "32b62a8810260a8a308f40a4d139b7c7" Path ID "32b62a8810260a8a308f40a4d139b7c7"
  INFO: Saving logs to "/run/user/1000/quickshell/by-id/dk95glo7t/log.qslog"
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:37:30: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:38:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:42:34: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:43:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:47:42: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:52:30: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:53:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:57:30: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:58:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:62:30: Junk at end of value for background-color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:63:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:67:19: Junk at end of value for color
(quickshell:12397): Gtk-WARNING **: 20:19:17.317: Theme parsing error: gtk.css:71:19: Junk at end of value for color
 ERROR: Failed to load configuration
 ERROR: caused by @shell.qml[94:20]: Type ShellIiPanels unavailable
 ERROR: caused by @ShellIiPanels.qml[39:52]: Type Lock unavailable
 ERROR: caused by @modules/lock/Lock.qml[145:9]: Type WaffleLockSurface unavailable
 ERROR: caused by @modules/waffle/lock/WaffleLockSurface.qml[310:29]: Type FluentIcon unavailable
 ERROR: caused by @modules/waffle/looks/FluentIcon.qml[2:1]: module "org.kde.kirigami" is not installed
[artem@nixos:~]$

As I understand it, QS doesn’t see the path to kirigami, even though I have it installed.

  environment.systemPackages = with pkgs; [
  quickshell
  kdePackages.qt5compat
  kdePackages.qtpositioning
  kdePackages.kirigami # <- here is kirigami
  kdePackages.qtdeclarative
  kdePackages.qtbase
  kdePackages.syntax-highlighting
  ];
  system.stateVersion = "25.11"; # Did you read the comment?
}

This is what $QML2_IMPORT_PATH currently looks like by default.

[artem@nixos:~]$ echo $QML2_IMPORT_PATH
/home/artem/.nix-profile/lib/qt-5.15.18/qml:/home/artem/.nix-profile/lib/qt-6/qml:/nix/profile/lib/qt-5.15.18/qml:/nix/profile/lib/qt-6/qml:/home/artem/.local/state/nix/profile/lib/qt-5.15.18/qml:/home/artem/.local/state/nix/profile/lib/qt-6/qml:/etc/profiles/per-user/artem/lib/qt-5.15.18/qml:/etc/profiles/per-user/artem/lib/qt-6/qml:/nix/var/nix/profiles/default/lib/qt-5.15.18/qml:/nix/var/nix/profiles/default/lib/qt-6/qml:/run/current-system/sw/lib/qt-5.15.18/qml:/run/current-system/sw/lib/qt-6/qml
[artem@nixos:~]$

but if I install export (imperatively through a bash session), then everything works in theory

[artem@nixos:~]$ export QML2_IMPORT_PATH=$QML2_IMPORT_PATH:/nix/store/mm58b3vlgv7blg281623bhca5m9h92xy-kirigami-6.20.0/lib/qt-6/qml
[artem@nixos:~]$ qs -c ii
  INFO: Launching config: "/home/artem/.config/quickshell/ii/shell.qml"
  INFO: Shell ID: "32b62a8810260a8a308f40a4d139b7c7" Path ID "32b62a8810260a8a308f40a4d139b7c7"
  INFO: Saving logs to "/run/user/1000/quickshell/by-id/6p9rolo7t/log.qslog"
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:37:30: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:38:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:42:34: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:43:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:47:42: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:52:30: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.877: Theme parsing error: gtk.css:53:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:57:30: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:58:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:62:30: Junk at end of value for background-color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:63:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:67:19: Junk at end of value for color
(quickshell:12570): Gtk-WARNING **: 20:24:27.878: Theme parsing error: gtk.css:71:19: Junk at end of value for color
  WARN: $HYPRLAND_INSTANCE_SIGNATURE is unset. Cannot connect to hyprland.
  INFO qml: CompositorService: Detected GNOME Shell
 DEBUG qml: [GameMode] Service starting...
 DEBUG qml: [Appearance] effectsEnabled: true gameModeActive: false
 DEBUG qml: [Appearance] animationsEnabled: true
 DEBUG qml: [Shell] Initializing singletons
  INFO: Configuration Loaded
  WARN: Could not attach Keys property to: qs::wayland::layershell::WaylandPanelInterface(0x7fe31cb19780) is not an Item
 DEBUG qml: [Translation] Language changed to en_US
 DEBUG qml: [Shell] Config ready, applying theme
  WARN scene: QML FileView at @services/GameMode.qml[195:5]: Read of /home/artem/.local/state/quickshell/user/gamemode_active failed: File does not exist.
 DEBUG qml: [GameMode] Initialized (no saved state)
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("/usr/bin/bash", "-c", "hyprctl hyprsunset temperature")
  WARN: Could not attach Keys property to: qs::wayland::layershell::WaylandPanelInterface(0x7fe31cb67400) is not an Item
 DEBUG qml: [ClipboardPanel] Refreshing clipboard via Cliphist service...
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN quickshell.service.notifications: Could not register notification server at org.freedesktop.Notifications, presumably because one is already registered.
  WARN quickshell.service.notifications: Registration will be attempted again if the active service is unregistered.
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0
  WARN: Could not attach Keys property to: qs::wayland::layershell::WaylandPanelInterface(0x7fe30033fb80) is not an Item
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0
  WARN qt.qpa.services: Failed to register with host portal QDBusError("org.freedesktop.portal.Error.Failed", "Could not register app ID: Connection already associated with an application ID")
  WARN scene: QML TranslationReader at @services/Translation.qml[68:5]: Read of /home/artem/.config/illogical-impulse/translations/en_US.json failed: File does not exist.
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
 DEBUG qml: [ThemeService] currentTheme changed to: auto - applying
 DEBUG qml: [ThemeService] applyCurrentTheme called, currentTheme: auto isAutoTheme: true
 DEBUG qml: [ThemeService] Delegating to MaterialThemeLoader
 DEBUG qml: [To Do] File loaded
 DEBUG qml: [Notifications] File loaded
  WARN scene: QML FileView at @services/Notepad.qml[32:5]: Read of /home/artem/.local/state/quickshell/user/notepad.txt failed: File does not exist.
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
 DEBUG qml: [Idle] Starting swayidle
  WARN qml: [PolkitService] Polkit module not available - polkit agent disabled
  WARN qml: [PolkitService] To enable, rebuild quickshell with -DSERVICE_POLKIT=ON
  WARN: Failed to initialize layershell integration
  WARN: Failed to initialize layershell integration
  WARN qt.qpa.wayland: eglSwapBuffers failed with 0x300d, surface: 0x0
 DEBUG qml: [ThemeService] applyCurrentTheme called, currentTheme: auto isAutoTheme: true
 DEBUG qml: [ThemeService] Delegating to MaterialThemeLoader
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("ddcutil", "detect", "--brief")
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("trans", "-list-languages", "-no-bidi")
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("/usr/bin/which", "dunstify")
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("/usr/bin/fish", "-c", "/usr/bin/fprintd-list (whoami)")
  WARN scene: QML FileView at @services/GameMode.qml[195:5]: Read of /home/artem/.local/state/quickshell/user/gamemode_active failed: File does not exist.
 DEBUG qml: [GameMode] Initialized (no saved state)
  WARN: Process failed to start, likely because the binary could not be found. Command: QList("flatpak", "ps", "--columns=application")

I also don’t want to put the hash into the configuration file.
So, is there any way I can set this in the config file without putting all this hash in there or is there another way to fix the error regarding kirigami not being available?