summary refs log tree commit diff
path: root/nixos/modules/services/x11/desktop-managers/plasma5.nix
diff options
context:
space:
mode:
authorK900 <me@0upti.me>2022-10-28 17:26:05 +0300
committerK900 <me@0upti.me>2022-10-28 18:05:26 +0300
commit9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964 (patch)
tree52f1cdcd619313e14e8310fdd99a9bff5ece19e6 /nixos/modules/services/x11/desktop-managers/plasma5.nix
parent38164d1660dcc24b41a5a22f1e9ef075a8e26714 (diff)
downloadnixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar.gz
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar.bz2
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar.lz
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar.xz
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.tar.zst
nixpkgs-9a48ce4fb2aaae9febcec4bb8ea76d37b0c18964.zip
nixos/plasma5: make kpackage able to resolve dependencies
Horrible horrible hack, but what can you do.
Diffstat (limited to 'nixos/modules/services/x11/desktop-managers/plasma5.nix')
-rw-r--r--nixos/modules/services/x11/desktop-managers/plasma5.nix13
1 files changed, 12 insertions, 1 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix
index 44faa19bc22..5d23ea0f98e 100644
--- a/nixos/modules/services/x11/desktop-managers/plasma5.nix
+++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix
@@ -391,7 +391,18 @@ in
 
       environment.etc."X11/xkb".source = xcfg.xkbDir;
 
-      environment.sessionVariables.PLASMA_USE_QT_SCALING = mkIf cfg.useQtScaling "1";
+      environment.sessionVariables = {
+        PLASMA_USE_QT_SCALING = mkIf cfg.useQtScaling "1";
+
+        # Needed for things that depend on other store.kde.org packages to install correctly,
+        # notably Plasma look-and-feel packages (a.k.a. Global Themes)
+        #
+        # FIXME: this is annoyingly impure and should really be fixed at source level somehow,
+        # but kpackage is a library so we can't just wrap the one thing invoking it and be done.
+        # This also means things won't work for people not on Plasma, but at least this way it
+        # works for SOME people.
+        KPACKAGE_DEP_RESOLVERS_PATH = "${pkgs.plasma5Packages.frameworkintegration.out}/libexec/kf5/kpackagehandlers";
+      };
 
       # Enable GTK applications to load SVG icons
       services.xserver.gdk-pixbuf.modulePackages = [ pkgs.librsvg ];