summaryrefslogtreecommitdiff
path: root/sys/core/drivers.nix
diff options
context:
space:
mode:
authoradikro <adikro@disroot.org>2025-12-20 15:25:38 +0100
committeradikro <adikro@disroot.org>2025-12-20 15:25:38 +0100
commitc1d9af57156f3c95590d9a12c394ee064df9696e (patch)
tree7e515761590c510c30329ef8548c7d84a8e95aaa /sys/core/drivers.nix
parent791bc419b6dac7c70951981ef6b34cdf85828470 (diff)
added disko config for laptop, added storage and memory modules
Diffstat (limited to 'sys/core/drivers.nix')
-rw-r--r--sys/core/drivers.nix65
1 files changed, 32 insertions, 33 deletions
diff --git a/sys/core/drivers.nix b/sys/core/drivers.nix
index de7dcb5..a01bb54 100644
--- a/sys/core/drivers.nix
+++ b/sys/core/drivers.nix
@@ -1,9 +1,9 @@
{ config, lib, pkgs, ... }:
let
- cfg = config.szpont.sys.core.drivers;
+ cfg = config.sys.core.drivers;
in
{
- options.szpont.sys.core.drivers = {
+ options.sys.core.drivers = {
enable = lib.mkEnableOption "enables hardware drivers";
amd.enable = lib.mkEnableOption "AMD specific drivers and microcode";
stability = lib.mkOption {
@@ -11,38 +11,37 @@ in
default = "stable";
};
};
+ config = lib.mkIf cfg.enable (lib.mkMerge [
+ {
+ services.smartd.enable = true;
+ hardware.sensor.iio.enable = true;
+ hardware.enableAllFirmware = true;
+ hardware.graphics = {
+ enable = true;
+ enable32Bit = true;
+ };
+ }
- config = lib.mkIf cfg.enable {
- services.smartd.enable = true;
- hardware.sensor.iio.enable = true;
- hardware.enableRedistributableFirmware = true;
- hardware.graphics = {
- enable = true;
- enable32Bit = true;
- };
+ (lib.mkIf cfg.amd.enable {
+ services.xserver.videoDrivers = [ "amdgpu" ];
+ hardware.cpu.amd.updateMicrocode = true;
+ hardware.amdgpu = {
+ initrd.enable = true;
+ overdrive.enable = true;
+ };
+ })
- programs.coolercontrol.enable = true;
- environment.systemPackages = with pkgs; [ linux-firmware ];
+ (lib.mkIf (cfg.amd.enable && cfg.stability == "unstable") {
+ services.lact.enable = true;
+ boot.kernelPackages = pkgs.linuxPackages_cachyos-lto-znver4;
+ chaotic.mesa-git = {
+ enable = true;
+ extraPackages = [ pkgs.mesa_git.opencl ];
+ };
+ })
- } // (lib.mkIf cfg.amd.enable (lib.mkMerge [
- {
- services.xserver.videoDrivers = [ "amdgpu" ];
- hardware.cpu.amd.updateMicrocode = true;
- hardware.amdgpu = {
- initrd.enable = true;
- overdrive.enable = true;
- };
- }
- (lib.mkIf (cfg.stability == "unstable") {
- services.lact.enable = true;
- boot.kernelPackages = pkgs.linuxPackages_cachyos-lto-znver4;
- chaotic.mesa-git = {
- enable = true;
- extraPackages = [ pkgs.mesa_git.opencl ];
- };
- })
- (lib.mkIf (cfg.stability == "stable") {
- boot.kernelPackages = pkgs.linuxPackages_latest;
- })
- ]));
+ (lib.mkIf (cfg.amd.enable && cfg.stability == "stable") {
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+ })
+ ]);
}