diff --git a/README.md b/README.md index 5c94ece..4eac18e 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,13 @@ rewrite of my nixos flake with hopefully better structuring and modularity - (quater-progress) reintegrate file paths and arguments to work together # todo: migrate files below -- [X] flake stuff (flake.nix & flake.lock) +[X] flake stuff (flake.nix & flake.lock) -- [X] hardware configs (hardware/scans) -- [X] nixos system -- [X] base nix configs -- [X] apps list -- [X] user config (not hm) +[X] hardware configs (hardware/scans) +[X] nixos system +[X] base nix configs +[X] apps list +[X] user config (not hm) -- [ ] home manager config -- [ ] rice config (everything in /rice) \ No newline at end of file +[ ] home manager config +[ ] rice config (everything in /rice) diff --git a/modules/hardware/battery-power.nix b/modules/hardware/battery-power.nix deleted file mode 100644 index e4a000b..0000000 --- a/modules/hardware/battery-power.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ pkgs, ... }: -{ - powerManagement.powertop.enable = true; - - services = { - udev.extraRules = '' - #ACTION=="add", SUBSYSTEM=="usb", TEST=="power/control", ATTR{power/control}="auto" - ACTION=="add", SUBSYSTEM=="pci", TEST=="power/control", ATTR{power/control}="auto" - SUBSYSTEM=="power_supply", ACTION=="change", RUN+="${pkgs.writeShellScript "battery-thresholds" '' - echo 80 > /sys/class/power_supply/BAT1/charge_control_start_threshold || true - echo 85 > /sys/class/power_supply/BAT1/charge_control_end_threshold || true - ''}" - ''; - upower = { - enable = true; - percentageCritical = 15; - percentageAction = 10; - usePercentageForPolicy = true; - allowRiskyCriticalPowerAction = true; - criticalPowerAction = "HybridSleep"; - }; - }; -} diff --git a/modules/hardware/cpu-thermal.nix b/modules/hardware/cpu-thermal.nix deleted file mode 100644 index 312d404..0000000 --- a/modules/hardware/cpu-thermal.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ pkgs, ... }: -{ - services = { - thermald.enable = true; - throttled.enable = true; - auto-cpufreq = { - enable = true; - settings = { - charger = { - governor = "performance"; - energy_performance_preference = "balance_performance"; - turbo = "auto"; - }; - battery = { - governor = "powersave"; - energy_performance_preference = "balance_power"; - turbo = "never"; - enable_thresholds = "true"; - start_threshold = "80"; - stop_threshold = "85"; - }; - }; - }; - thinkfan = { - enable = true; - levels = [ - [ "level auto" 0 55 ] - [ 3 55 65 ] - [ 7 65 75 ] - [ "level full-speed" 75 100 ] - ]; - # sensors = [ - # { type = "hwmon"; query = "/sys/devices/platform/coretemp.0/hwmon"; } - # ]; - }; - }; -} diff --git a/modules/hardware/igpu.nix b/modules/hardware/igpu.nix deleted file mode 100644 index 94b9c3c..0000000 --- a/modules/hardware/igpu.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ pkgs, ... }: -{ - hardware.graphics = { - enable = true; - enable32Bit = true; - extraPackages = with pkgs; [ - intel-media-driver - intel-compute-runtime - libva-vdpau-driver - libvdpau-va-gl - ]; - }; -} diff --git a/modules/hardware/power-button.nix b/modules/hardware/power-button.nix deleted file mode 100644 index 8b563bb..0000000 --- a/modules/hardware/power-button.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: -{ - services.logind.settings.Login = { - HandleLidSwitch = "suspend"; - HandlePowerKey = "ignore"; - }; -} diff --git a/modules/hardware/thinkpad.nix b/modules/hardware/thinkpad.nix index f429cca..a57fd9f 100644 --- a/modules/hardware/thinkpad.nix +++ b/modules/hardware/thinkpad.nix @@ -1,14 +1,9 @@ -{ pkgs, ... }: -{ - imports = [ +{ pkgs, ... }: { + import = [ ./tzupdate.nix ./hibernation.nix - ./igpu.nix - ./cpu-thermal.nix - ./battery-power.nix - ./power-button.nix ]; - + powerManagement.powertop.enable = true; security = { tpm2 = { enable = true; @@ -16,23 +11,82 @@ tctiEnvironment.enable = true; }; }; - hardware = { enableRedistributableFirmware = true; # T480 WiFi firmware fix bluetooth = { enable = true; powerOnBoot = true; }; + graphics = { + enable = true; + enable32Bit = true; + extraPackages = with pkgs; [ + intel-media-driver + intel-compute-runtime + libva-vdpau-driver + libvdpau-va-gl + ]; + }; }; - boot = { kernelPackages = pkgs.linuxPackages; kernel.sysctl."vm.laptop_mode" = 5; initrd.availableKernelModules = [ "thinkpad_acpi" ]; }; - services = { + logind.settings.Login = { + HandleLidSwitch = "suspend"; + HandlePowerKey = "ignore"; + }; fstrim.enable = true; + thermald.enable = true; + throttled.enable = true; fwupd.enable = true; + udev.extraRules = '' + #ACTION=="add", SUBSYSTEM=="usb", TEST=="power/control", ATTR{power/control}="auto" + ACTION=="add", SUBSYSTEM=="pci", TEST=="power/control", ATTR{power/control}="auto" + SUBSYSTEM=="power_supply", ACTION=="change", RUN+="${pkgs.writeShellScript "battery-thresholds" '' + echo 80 > /sys/class/power_supply/BAT1/charge_control_start_threshold || true + echo 85 > /sys/class/power_supply/BAT1/charge_control_end_threshold || true + ''}" + ''; + upower = { + enable = true; + percentageCritical = 15; + percentageAction = 10; + usePercentageForPolicy = true; + allowRiskyCriticalPowerAction = true; + criticalPowerAction = "HybridSleep"; + }; + auto-cpufreq = { + enable = true; + settings = { + charger = { + governor = "performance"; + energy_performance_preference = "balance_performance"; + turbo = "auto"; + }; + battery = { + governor = "powersave"; + energy_performance_preference = "balance_power"; + turbo = "never"; + enable_thresholds = "true"; + start_threshold = "80"; + stop_threshold = "85"; + }; + }; + }; + thinkfan = { + enable = true; + levels = [ + [ "level auto" 0 55 ] + [ 3 55 65 ] + [ 7 65 75 ] + [ "level full-speed" 75 100 ] + ]; + # sensors = [ + # { type = "hwmon"; query = "/sys/devices/platform/coretemp.0/hwmon"; } + # ]; + }; }; -} +} \ No newline at end of file