nixos/corectrl: nixfmt and refactor

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>

Changed files
+42 -29
nixos
modules
hardware
+42 -29
nixos/modules/hardware/corectrl.nix
···
-
{ config, pkgs, lib, ... }:
+
{
+
config,
+
pkgs,
+
lib,
+
...
+
}:
let
+
inherit (lib)
+
mkEnableOption
+
mkIf
+
mkOption
+
mkPackageOption
+
;
+
cfg = config.programs.corectrl;
in
{
options.programs.corectrl = {
-
enable = lib.mkEnableOption ''
+
enable = mkEnableOption ''
CoreCtrl, a tool to overclock amd graphics cards and processors.
Add your user to the corectrl group to run corectrl without needing to enter your password
'';
-
package = lib.mkPackageOption pkgs "corectrl" {
+
package = mkPackageOption pkgs "corectrl" {
extraDescription = "Useful for overriding the configuration options used for the package.";
};
gpuOverclock = {
-
enable = lib.mkEnableOption ''
+
enable = mkEnableOption ''
GPU overclocking
'';
-
ppfeaturemask = lib.mkOption {
+
ppfeaturemask = mkOption {
type = lib.types.str;
default = "0xfffd7fff";
example = "0xffffffff";
···
};
};
-
config = lib.mkIf cfg.enable (lib.mkMerge [
-
{
-
environment.systemPackages = [ cfg.package ];
+
config = mkIf cfg.enable {
+
environment.systemPackages = [ cfg.package ];
-
services.dbus.packages = [ cfg.package ];
+
services.dbus.packages = [ cfg.package ];
-
users.groups.corectrl = { };
+
users.groups.corectrl = { };
-
security.polkit.extraConfig = ''
-
polkit.addRule(function(action, subject) {
-
if ((action.id == "org.corectrl.helper.init" ||
-
action.id == "org.corectrl.helperkiller.init") &&
-
subject.local == true &&
-
subject.active == true &&
-
subject.isInGroup("corectrl")) {
-
return polkit.Result.YES;
-
}
-
});
-
'';
-
}
+
security.polkit.extraConfig = ''
+
polkit.addRule(function(action, subject) {
+
if ((action.id == "org.corectrl.helper.init" ||
+
action.id == "org.corectrl.helperkiller.init") &&
+
subject.local == true &&
+
subject.active == true &&
+
subject.isInGroup("corectrl")) {
+
return polkit.Result.YES;
+
}
+
});
+
'';
-
(lib.mkIf cfg.gpuOverclock.enable {
-
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/amd/include/amd_shared.h#n169
-
# The overdrive bit
-
boot.kernelParams = [ "amdgpu.ppfeaturemask=${cfg.gpuOverclock.ppfeaturemask}" ];
-
})
-
]);
+
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/amd/include/amd_shared.h#n169
+
# The overdrive bit
+
boot.kernelParams = mkIf cfg.gpuOverclock.enable [
+
"amdgpu.ppfeaturemask=${cfg.gpuOverclock.ppfeaturemask}"
+
];
+
};
-
meta.maintainers = with lib.maintainers; [ artturin Scrumplex ];
+
meta.maintainers = with lib.maintainers; [
+
artturin
+
Scrumplex
+
];
}