migrate most of the nixos system

This commit is contained in:
Satria 2026-02-01 16:54:44 +07:00
commit e7f0cdb4a2
8 changed files with 426 additions and 1 deletions

View file

@ -0,0 +1,100 @@
{ pkgs, lib, resume-dev, ... }: {
time.timeZone = lib.mkForce null;
powerManagement = {
enable = true;
powertop.enable = true;
};
security = {
protectKernelImage = false; # https://discourse.nixos.org/t/hibernate-doesnt-work-anymore/24673/7
tpm2 = {
enable = true;
pkcs11.enable = true;
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 = {
kernelParams = if resume-dev == "" then [] else ["resume=${resume-dev}"];
resumeDevice = "${resume-dev}";
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
''}"
'';
tzupdate = {
enable = true;
timer.enable = 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"; }
# ];
};
};
}