This commit is contained in:
2025-11-15 12:01:33 +00:00
parent eaa91530c5
commit 0ba6844b6e
+22 -29
View File
@@ -23,59 +23,52 @@
}; };
system76.enableAll = true; system76.enableAll = true;
}; };
swapDevices = [ { swapDevices = [ {
device = "/var/swapfile"; device = "/var/swapfile";
size = 24 * 1024; size = 24 * 1024;
} ]; } ];
boot.resumeDevice = "/dev/disk/by-uuid/c7704142-d0b9-4a85-af1c-ce776b895c0f"; boot = {
boot.kernelParams = [ resumeDevice = "/dev/disk/by-uuid/c7704142-d0b9-4a85-af1c-ce776b895c0f";
kernelParams = [
"resume_offset=13629440" "resume_offset=13629440"
"mem_sleep_default=s2idle" "mem_sleep_default=s2idle"
]; ];
boot.initrd.postMountCommands = lib.mkAfter '' kernelPackages = pkgs.linuxPackages_latest;
initrd.postMountCommands = lib.mkAfter ''
swapon /mnt-root/var/swapfile swapon /mnt-root/var/swapfile
''; '';
boot.kernelPackages = pkgs.linuxPackages_latest; };
services.system76-scheduler.enable = true; services = {
services.tailscale.enable = false; system76-scheduler.enable = true;
services.power-profiles-daemon.enable = false; tailscale.enable = false;
services.thermald.enable = true; power-profiles-daemon.enable = false;
thermald.enable = true;
logind.settings.Login.HandleLidSwitch = "suspend-then-hibernate";
hardware.bolt.enable = true;
};
systemd.services.charge-thresholds = { systemd = {
services = {
charge-thresholds = {
description = "Set System76 battery charge thresholds"; description = "Set System76 battery charge thresholds";
wantedBy = [ "multi-user.target" "post-resume.target" ]; wantedBy = [ "multi-user.target" "post-resume.target" ];
after = [ "network.target" "suspend.target" "hibernate.target" "hybrid-sleep.target" ]; # Ensures it runs post-resume after = [ "network.target" "suspend.target" "hibernate.target" "hybrid-sleep.target" ];
serviceConfig = { serviceConfig = {
Type = "oneshot"; Type = "oneshot";
ExecStart = "${pkgs.system76-power}/bin/system76-power charge-thresholds --profile balanced"; ExecStart = "${pkgs.system76-power}/bin/system76-power charge-thresholds --profile balanced";
RemainAfterExit = true; RemainAfterExit = true;
}; };
}; };
systemd.services.thunderbolt-suspend = {
description = "Disable Thunderbolt on suspend";
wantedBy = [ "suspend.target" "hibernate.target" "hybrid-sleep.target" ];
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.bolt}/bin/boltctl forget --all"; # Or echo 1 > /sys/bus/thunderbolt/devices/*/authorized if no bolt
}; };
};
systemd.services.thunderbolt-resume = { sleep.extraConfig = ''
description = "Re-enable Thunderbolt on resume";
wantedBy = [ "post-resume.target" ];
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.bolt}/bin/boltctl authorize --all"; # Adjust as needed
};
};
systemd.sleep.extraConfig = ''
HibernateDelaySec=20m HibernateDelaySec=20m
SuspendState=mem SuspendState=mem
''; '';
};
services.logind.lidSwitch = "suspend-then-hibernate";
services.hardware.bolt.enable = true;
home-manager = { home-manager = {
useGlobalPkgs = true; useGlobalPkgs = true;