From 52ce3a5ee92f71bb5ab5282d683e409089e87657 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo?= Date: Tue, 2 Sep 2025 08:56:17 -0300 Subject: [PATCH 1/3] nixos/lxqt: small edits in the nix expression --- .../services/x11/desktop-managers/lxqt.nix | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/nixos/modules/services/x11/desktop-managers/lxqt.nix b/nixos/modules/services/x11/desktop-managers/lxqt.nix index 7651275c3ee2..ae680754fa5f 100644 --- a/nixos/modules/services/x11/desktop-managers/lxqt.nix +++ b/nixos/modules/services/x11/desktop-managers/lxqt.nix @@ -9,8 +9,7 @@ with lib; let - xcfg = config.services.xserver; - cfg = xcfg.desktopManager.lxqt; + cfg = config.services.xserver.desktopManager.lxqt; in @@ -21,16 +20,13 @@ in options = { - services.xserver.desktopManager.lxqt.enable = mkOption { - type = types.bool; - default = false; - description = "Enable the LXQt desktop manager"; - }; + services.xserver.desktopManager.lxqt.enable = mkEnableOption "the LXQt desktop manager"; environment.lxqt.excludePackages = mkOption { + type = with lib.types; listOf package; default = [ ]; - example = literalExpression "[ pkgs.lxqt.qterminal ]"; - type = types.listOf types.package; + defaultText = lib.literalExpression "[ ]"; + example = lib.literalExpression "with pkgs; [ lxqt.qterminal ]"; description = "Which LXQt packages to exclude from the default environment"; }; @@ -69,7 +65,7 @@ in programs.gnupg.agent.pinentryPackage = mkDefault pkgs.pinentry-qt; # virtual file systems support for PCManFM-QT - services.gvfs.enable = true; + services.gvfs.enable = mkDefault true; services.upower.enable = config.powerManagement.enable; From 6f06052a50cdf3beac3e3969ff90d3e8ca238e51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo?= Date: Tue, 2 Sep 2025 09:00:36 -0300 Subject: [PATCH 2/3] nixos/lxqt: add option: iconThemePackage --- nixos/modules/services/x11/desktop-managers/lxqt.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nixos/modules/services/x11/desktop-managers/lxqt.nix b/nixos/modules/services/x11/desktop-managers/lxqt.nix index ae680754fa5f..6bd6da834b65 100644 --- a/nixos/modules/services/x11/desktop-managers/lxqt.nix +++ b/nixos/modules/services/x11/desktop-managers/lxqt.nix @@ -22,6 +22,12 @@ in services.xserver.desktopManager.lxqt.enable = mkEnableOption "the LXQt desktop manager"; + services.xserver.desktopManager.lxqt.iconThemePackage = + lib.mkPackageOption pkgs [ "kdePackages" "breeze-icons" ] { } + // { + description = "The package that provides a default icon theme."; + }; + environment.lxqt.excludePackages = mkOption { type = with lib.types; listOf package; default = [ ]; @@ -57,6 +63,7 @@ in environment.systemPackages = pkgs.lxqt.preRequisitePackages ++ pkgs.lxqt.corePackages + ++ [ cfg.iconThemePackage ] ++ (utils.removePackagesByName pkgs.lxqt.optionalPackages config.environment.lxqt.excludePackages); # Link some extra directories in /run/current-system/software/share From 873fabf26a59612cbf1c43854fa520342370c9bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo?= Date: Tue, 2 Sep 2025 09:28:31 -0300 Subject: [PATCH 3/3] nixos/lxqt: add option: extraPackages --- nixos/modules/services/x11/desktop-managers/lxqt.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/x11/desktop-managers/lxqt.nix b/nixos/modules/services/x11/desktop-managers/lxqt.nix index 6bd6da834b65..1ccaa28f8642 100644 --- a/nixos/modules/services/x11/desktop-managers/lxqt.nix +++ b/nixos/modules/services/x11/desktop-managers/lxqt.nix @@ -28,6 +28,14 @@ in description = "The package that provides a default icon theme."; }; + services.xserver.desktopManager.lxqt.extraPackages = lib.mkOption { + type = with lib.types; listOf package; + default = [ ]; + defaultText = lib.literalExpression "[ ]"; + example = lib.literalExpression "with pkgs; [ xscreensaver ]"; + description = "Extra packages to be installed system wide."; + }; + environment.lxqt.excludePackages = mkOption { type = with lib.types; listOf package; default = [ ]; @@ -64,7 +72,8 @@ in pkgs.lxqt.preRequisitePackages ++ pkgs.lxqt.corePackages ++ [ cfg.iconThemePackage ] - ++ (utils.removePackagesByName pkgs.lxqt.optionalPackages config.environment.lxqt.excludePackages); + ++ (utils.removePackagesByName pkgs.lxqt.optionalPackages config.environment.lxqt.excludePackages) + ++ cfg.extraPackages; # Link some extra directories in /run/current-system/software/share environment.pathsToLink = [ "/share" ];