summaryrefslogtreecommitdiff
path: root/hosts/skadhi
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2026-09-28 08:54:09 +0200
committerGregor Kleen <gkleen@yggdrasil.li>2026-09-28 08:54:09 +0200
commit5996d5f84899fb919c6701f8acd599c5c23988e0 (patch)
tree5e259f7c89e91c1020a0f882038d46e779233299 /hosts/skadhi
parentbadf7aba844967c5d13e01079c12df758715167a (diff)
downloadnixos-5996d5f84899fb919c6701f8acd599c5c23988e0.tar
nixos-5996d5f84899fb919c6701f8acd599c5c23988e0.tar.gz
nixos-5996d5f84899fb919c6701f8acd599c5c23988e0.tar.bz2
nixos-5996d5f84899fb919c6701f8acd599c5c23988e0.tar.xz
nixos-5996d5f84899fb919c6701f8acd599c5c23988e0.zip
...
Diffstat (limited to 'hosts/skadhi')
-rw-r--r--hosts/skadhi/default.nix25
1 files changed, 25 insertions, 0 deletions
diff --git a/hosts/skadhi/default.nix b/hosts/skadhi/default.nix
index 5a1e9366..cf25777b 100644
--- a/hosts/skadhi/default.nix
+++ b/hosts/skadhi/default.nix
@@ -89,5 +89,30 @@
89 HandleLidSwitch = "sleep"; 89 HandleLidSwitch = "sleep";
90 HandleLidSwitchExternalPower = "ignore"; 90 HandleLidSwitchExternalPower = "ignore";
91 }; 91 };
92
93 systemd.timers.nix-gc = lib.mkForce {
94 timerConfig = {
95 RandomizedDelaySec = "12h";
96 Persistent = true;
97 OnCalendar = "*-*-* 18:00:00 Europe/Berlin";
98 };
99 wantedBy = [ "timers.target" ];
100 };
101 systemd.services.nix-gc = lib.mkForce {
102 description = "Nix Garbage Collector";
103 serviceConfig = {
104 Type = "oneshot";
105 ExecStart = pkgs.resholve.writeScript "nix-gc" {
106 interpreter = lib.getExe pkgs.zsh;
107 inputs = [ pkgs.coreutils config.nix.package ];
108 execer = [ "cannot:${lib.getExe' config.nix.package "nix-collect-garbage"}" ];
109 } ''
110 max_size=$(($(du -bs /nix/store | cut -f 1) - 1024**4))
111 [[ $max_size -gt 0 ]] || exit 0
112 exec nix-collect-garbage -vv --max-freed $max_size --delete-older-than 30d
113 '';
114 };
115 restartIfChanged = false;
116 };
92 }; 117 };
93} 118}