Loading nixos/modules/services/x11/desktop-managers/plasma5.nix +16 −21 Original line number Diff line number Diff line Loading @@ -26,10 +26,8 @@ let emptyValue.value = {}; }; libsForQt5 = pkgs.plasma5Packages; inherit (libsForQt5) kdeGear kdeFrameworks plasma5; inherit (lib) getBin optionalAttrs optionalString literalExpression getBin optionalAttrs literalExpression mkRemovedOptionModule mkRenamedOptionModule mkDefault mkIf mkMerge mkOption mkPackageOption types; Loading Loading @@ -65,7 +63,7 @@ let # recognize that software that has been removed. rm -fv $HOME/.cache/ksycoca* ${libsForQt5.kservice}/bin/kbuildsycoca5 ${pkgs.plasma5Packages.kservice}/bin/kbuildsycoca5 ''; set_XDG_CONFIG_HOME = '' Loading Loading @@ -176,20 +174,19 @@ in owner = "root"; group = "root"; capabilities = "cap_sys_nice+ep"; source = "${getBin plasma5.kwin}/bin/kwin_wayland"; source = "${getBin pkgs.plasma5Packages.kwin}/bin/kwin_wayland"; }; } // optionalAttrs (!cfg.runUsingSystemd) { start_kdeinit = { setuid = true; owner = "root"; group = "root"; source = "${getBin libsForQt5.kinit}/libexec/kf5/start_kdeinit"; source = "${getBin pkgs.plasma5Packages.kinit}/libexec/kf5/start_kdeinit"; }; }; environment.systemPackages = with libsForQt5; with plasma5; with kdeGear; with kdeFrameworks; with pkgs.plasma5Packages; let requiredPackages = [ frameworkintegration Loading Loading @@ -284,8 +281,8 @@ in ++ utils.removePackagesByName optionalPackages config.environment.plasma5.excludePackages # Phonon audio backend ++ lib.optional (cfg.phononBackend == "gstreamer") libsForQt5.phonon-backend-gstreamer ++ lib.optional (cfg.phononBackend == "vlc") libsForQt5.phonon-backend-vlc ++ lib.optional (cfg.phononBackend == "gstreamer") pkgs.plasma5Packages.phonon-backend-gstreamer ++ lib.optional (cfg.phononBackend == "vlc") pkgs.plasma5Packages.phonon-backend-vlc # Optional hardware support features ++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt pkgs.openobex pkgs.obexftp ] Loading @@ -301,7 +298,7 @@ in # Extra services for D-Bus activation services.dbus.packages = [ plasma5.kactivitymanagerd pkgs.plasma5Packages.kactivitymanagerd ]; environment.pathsToLink = [ Loading Loading @@ -334,7 +331,7 @@ in serif = [ "Noto Serif" ]; }; programs.ssh.askPassword = mkDefault "${plasma5.ksshaskpass.out}/bin/ksshaskpass"; programs.ssh.askPassword = mkDefault "${pkgs.plasma5Packages.ksshaskpass.out}/bin/ksshaskpass"; # Enable helpful DBus services. services.accounts-daemon.enable = true; Loading Loading @@ -372,8 +369,8 @@ in }; xdg.portal.enable = true; xdg.portal.extraPortals = [ plasma5.xdg-desktop-portal-kde ]; xdg.portal.configPackages = mkDefault [ plasma5.xdg-desktop-portal-kde ]; xdg.portal.extraPortals = [ pkgs.plasma5Packages.xdg-desktop-portal-kde ]; xdg.portal.configPackages = mkDefault [ pkgs.plasma5Packages.xdg-desktop-portal-kde ]; # xdg-desktop-portal-kde expects PipeWire to be running. # This does not, by default, replace PulseAudio. services.pipewire.enable = mkDefault true; Loading Loading @@ -404,15 +401,14 @@ in '' ]; services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-workspace ]; services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-workspace ]; # Default to be `plasma` (X11) instead of `plasmawayland`, since plasma wayland currently has # many tiny bugs. # See: https://github.com/NixOS/nixpkgs/issues/143272 services.xserver.displayManager.defaultSession = mkDefault "plasma"; environment.systemPackages = with libsForQt5; with plasma5; with kdeGear; with kdeFrameworks; with pkgs.plasma5Packages; let requiredPackages = [ ksystemstats Loading Loading @@ -448,7 +444,7 @@ in script = '' ${set_XDG_CONFIG_HOME} ${kdeFrameworks.kconfig}/bin/kwriteconfig5 \ ${pkgs.plasma5Packages.kconfig}/bin/kwriteconfig5 \ --file startkderc --group General --key systemdBoot ${lib.boolToString cfg.runUsingSystemd} ''; }; Loading Loading @@ -476,8 +472,7 @@ in ]; environment.systemPackages = with libsForQt5; with plasma5; with kdeApplications; with kdeFrameworks; with pkgs.plasma5Packages; [ # Basic packages without which Plasma Mobile fails to work properly. plasma-mobile Loading Loading @@ -536,7 +531,7 @@ in }; }; services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-mobile ]; services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-mobile ]; }) # Plasma Bigscreen Loading Loading
nixos/modules/services/x11/desktop-managers/plasma5.nix +16 −21 Original line number Diff line number Diff line Loading @@ -26,10 +26,8 @@ let emptyValue.value = {}; }; libsForQt5 = pkgs.plasma5Packages; inherit (libsForQt5) kdeGear kdeFrameworks plasma5; inherit (lib) getBin optionalAttrs optionalString literalExpression getBin optionalAttrs literalExpression mkRemovedOptionModule mkRenamedOptionModule mkDefault mkIf mkMerge mkOption mkPackageOption types; Loading Loading @@ -65,7 +63,7 @@ let # recognize that software that has been removed. rm -fv $HOME/.cache/ksycoca* ${libsForQt5.kservice}/bin/kbuildsycoca5 ${pkgs.plasma5Packages.kservice}/bin/kbuildsycoca5 ''; set_XDG_CONFIG_HOME = '' Loading Loading @@ -176,20 +174,19 @@ in owner = "root"; group = "root"; capabilities = "cap_sys_nice+ep"; source = "${getBin plasma5.kwin}/bin/kwin_wayland"; source = "${getBin pkgs.plasma5Packages.kwin}/bin/kwin_wayland"; }; } // optionalAttrs (!cfg.runUsingSystemd) { start_kdeinit = { setuid = true; owner = "root"; group = "root"; source = "${getBin libsForQt5.kinit}/libexec/kf5/start_kdeinit"; source = "${getBin pkgs.plasma5Packages.kinit}/libexec/kf5/start_kdeinit"; }; }; environment.systemPackages = with libsForQt5; with plasma5; with kdeGear; with kdeFrameworks; with pkgs.plasma5Packages; let requiredPackages = [ frameworkintegration Loading Loading @@ -284,8 +281,8 @@ in ++ utils.removePackagesByName optionalPackages config.environment.plasma5.excludePackages # Phonon audio backend ++ lib.optional (cfg.phononBackend == "gstreamer") libsForQt5.phonon-backend-gstreamer ++ lib.optional (cfg.phononBackend == "vlc") libsForQt5.phonon-backend-vlc ++ lib.optional (cfg.phononBackend == "gstreamer") pkgs.plasma5Packages.phonon-backend-gstreamer ++ lib.optional (cfg.phononBackend == "vlc") pkgs.plasma5Packages.phonon-backend-vlc # Optional hardware support features ++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt pkgs.openobex pkgs.obexftp ] Loading @@ -301,7 +298,7 @@ in # Extra services for D-Bus activation services.dbus.packages = [ plasma5.kactivitymanagerd pkgs.plasma5Packages.kactivitymanagerd ]; environment.pathsToLink = [ Loading Loading @@ -334,7 +331,7 @@ in serif = [ "Noto Serif" ]; }; programs.ssh.askPassword = mkDefault "${plasma5.ksshaskpass.out}/bin/ksshaskpass"; programs.ssh.askPassword = mkDefault "${pkgs.plasma5Packages.ksshaskpass.out}/bin/ksshaskpass"; # Enable helpful DBus services. services.accounts-daemon.enable = true; Loading Loading @@ -372,8 +369,8 @@ in }; xdg.portal.enable = true; xdg.portal.extraPortals = [ plasma5.xdg-desktop-portal-kde ]; xdg.portal.configPackages = mkDefault [ plasma5.xdg-desktop-portal-kde ]; xdg.portal.extraPortals = [ pkgs.plasma5Packages.xdg-desktop-portal-kde ]; xdg.portal.configPackages = mkDefault [ pkgs.plasma5Packages.xdg-desktop-portal-kde ]; # xdg-desktop-portal-kde expects PipeWire to be running. # This does not, by default, replace PulseAudio. services.pipewire.enable = mkDefault true; Loading Loading @@ -404,15 +401,14 @@ in '' ]; services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-workspace ]; services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-workspace ]; # Default to be `plasma` (X11) instead of `plasmawayland`, since plasma wayland currently has # many tiny bugs. # See: https://github.com/NixOS/nixpkgs/issues/143272 services.xserver.displayManager.defaultSession = mkDefault "plasma"; environment.systemPackages = with libsForQt5; with plasma5; with kdeGear; with kdeFrameworks; with pkgs.plasma5Packages; let requiredPackages = [ ksystemstats Loading Loading @@ -448,7 +444,7 @@ in script = '' ${set_XDG_CONFIG_HOME} ${kdeFrameworks.kconfig}/bin/kwriteconfig5 \ ${pkgs.plasma5Packages.kconfig}/bin/kwriteconfig5 \ --file startkderc --group General --key systemdBoot ${lib.boolToString cfg.runUsingSystemd} ''; }; Loading Loading @@ -476,8 +472,7 @@ in ]; environment.systemPackages = with libsForQt5; with plasma5; with kdeApplications; with kdeFrameworks; with pkgs.plasma5Packages; [ # Basic packages without which Plasma Mobile fails to work properly. plasma-mobile Loading Loading @@ -536,7 +531,7 @@ in }; }; services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-mobile ]; services.xserver.displayManager.sessionPackages = [ pkgs.plasma5Packages.plasma-mobile ]; }) # Plasma Bigscreen Loading