From 98a66be2da1fda383c3b9241133cbdd8ea3d4651 Mon Sep 17 00:00:00 2001 From: Wroclaw Date: Sat, 29 Mar 2025 13:02:53 +0100 Subject: [PATCH 1/2] nixos/openrazer: allow to configure packages --- nixos/modules/hardware/openrazer.nix | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/nixos/modules/hardware/openrazer.nix b/nixos/modules/hardware/openrazer.nix index 470d451439d4..6eb174db93f3 100644 --- a/nixos/modules/hardware/openrazer.nix +++ b/nixos/modules/hardware/openrazer.nix @@ -6,11 +6,10 @@ }: let cfg = config.hardware.openrazer; - kernelPackages = config.boot.kernelPackages; toPyBoolStr = b: if b then "True" else "False"; - daemonExe = "${pkgs.openrazer-daemon}/bin/openrazer-daemon --config ${daemonConfFile}"; + daemonExe = "${cfg.packages.daemon}/bin/openrazer-daemon --config ${daemonConfFile}"; daemonConfFile = pkgs.writeTextFile { name = "razer.conf"; @@ -134,6 +133,16 @@ in can start and interact with the OpenRazer userspace daemon. ''; }; + + packages = { + kernel = lib.mkPackageOption pkgs "openrazer kernel" { } // { + default = config.boot.kernelPackages.openrazer; + defaultText = lib.literalExpression '' + config.boot.kernelPackages.openrazer + ''; + }; + daemon = lib.mkPackageOption pkgs [ "python3Packages" "openrazer-daemon" ] { }; + }; }; }; @@ -145,14 +154,16 @@ in ]; config = lib.mkIf cfg.enable { - boot.extraModulePackages = [ kernelPackages.openrazer ]; + boot.extraModulePackages = [ cfg.packages.kernel ]; boot.kernelModules = drivers; # Makes the man pages available so you can successfully run # > systemctl --user help openrazer-daemon - environment.systemPackages = [ pkgs.python3Packages.openrazer-daemon.man ]; + environment.systemPackages = lib.mkIf (cfg.packages.daemon ? man) [ + cfg.packages.daemon.man + ]; - services.udev.packages = [ kernelPackages.openrazer ]; + services.udev.packages = [ cfg.packages.kernel ]; services.dbus.packages = [ dbusServiceFile ]; # A user must be a member of the openrazer group in order to start From 31ee0ef9843e636f27abfc2560c8b6f97f99860d Mon Sep 17 00:00:00 2001 From: Sandro Date: Fri, 24 Apr 2026 18:01:08 +0200 Subject: [PATCH 2/2] nixos/openrazer: remove extra new lines from defaultText --- nixos/modules/hardware/openrazer.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nixos/modules/hardware/openrazer.nix b/nixos/modules/hardware/openrazer.nix index 6eb174db93f3..88c23a527e0e 100644 --- a/nixos/modules/hardware/openrazer.nix +++ b/nixos/modules/hardware/openrazer.nix @@ -137,9 +137,7 @@ in packages = { kernel = lib.mkPackageOption pkgs "openrazer kernel" { } // { default = config.boot.kernelPackages.openrazer; - defaultText = lib.literalExpression '' - config.boot.kernelPackages.openrazer - ''; + defaultText = lib.literalExpression "config.boot.kernelPackages.openrazer"; }; daemon = lib.mkPackageOption pkgs [ "python3Packages" "openrazer-daemon" ] { }; };