main
1{den, ...}: {
2 den.aspects.core.includes = [den.aspects.core.systemd];
3 den.aspects.core.systemd = {
4 persist = {
5 files = [
6 {
7 file = "/etc/machine-id";
8 inInitrd = true;
9 }
10 ];
11 };
12 cache = {
13 directories = [
14 "/var/lib/systemd/coredump"
15 "/var/lib/systemd/timers"
16 "/var/lib/systemd/catalog"
17 {
18 directory = "/var/lib/systemd/network";
19 mode = "0755";
20 user = "systemd-network";
21 group = "systemd-network";
22 }
23 "/var/log"
24 ];
25 files = [
26 "/var/lib/lastlog/lastlog2.db"
27 ];
28 };
29
30 nixos = {
31 host,
32 lib,
33 ...
34 }: {
35 systemd.tmpfiles.rules = [
36 "d /var/lib/systemd/coredump 0755 root root 7d"
37 ];
38
39 services.journald.extraConfig = ''
40 MaxRetentionSec=3month
41 SystemMaxUse=2G
42 '';
43
44 systemd.suppressedSystemUnits =
45 lib.optional (host.hasAspect den.aspects.disk.preservation)
46 "systemd-machine-id-commit.service";
47 };
48 };
49}