| 4 Mar 2025 |
Ilan Joselevich (Kranzes) | In reply to @arianvp:matrix.org I want to do more with EROFS but all the cool features are undocumented Learn Chinese | 15:14:36 |
Arian | Does erofs do fs-verity? | 16:19:08 |
raitobezarius | i think everything is in place for fs-verity if not | 16:19:39 |
raitobezarius | same for bcachefs | 16:19:41 |
Arian | (could perhaps patch kernel to use erofs instead of cpio for initramfs) | 16:19:50 |
emily | https://github.com/containers/initoverlayfs ? | 16:32:26 |
Arian | Hmmm does anybody know what the difference is between login from shadow and login from util-linux ? | 17:00:52 |
Arian | we seem to use ${shadow}/bin/login on NixOS but other distros do not | 17:02:08 |
Arian | which is weird | 17:03:30 |
| lassulus changed their profile picture. | 17:48:45 |
| 5 Mar 2025 |
eliasp | A while ago, I mentioned seeing an issue with runtime overrides not getting applied. Ran into this now again. I have a complex Caddy configuration that I'd like to debug "in vivo", so I copied the Caddy config from the store to a writable location, ran `systemctl edit --runtime caddy && systemctl daemon-reload && systemctl restart caddy", but a "ps | grep caddy" shows it's still referrencing the old config path.
I made sure to "reset" ExecStart= and ExecReload= each by first declaring them empty before defining the new invocation pointing to the new path, but still… 🤷
A systemctl cat caddy.service includes the runtime override and the new values, but the running service itself also via systemctl show caddy | grep ExecStart points to the original location
that's happening with 257.2 - anyone else ran into something like this? | 10:39:10 |
eliasp | is this potentially caused by the fact, that the Caddy module itself already throws an override at Caddy?
Drop-In: /run/systemd/system/caddy.service.d
└─override.conf
/nix/store/s2ggv021sz8m4pk62s452pffs0qvh39d-system-units/caddy.service.d
└─overrides.conf
| 10:42:37 |
K900 | No, that should not matter | 10:42:58 |
eliasp | ah, I see... that's just the regular one in /etc/static/systemd/system/caddy.service.d/, but systemd's display of the realpath instead of the symlink is what confused me.... | 10:44:13 |
eliasp | might have strace PID#1 to get to the bottom of this… this will be "fun" 😒 | 10:45:23 |
eliasp | might have to strace PID#1 to get to the bottom of this… this will be "fun" 😒 | 10:46:12 |
eliasp | I should probably not use -f on strace in this case 🤦 | 10:48:02 |
eliasp | hmm, according to strace, it reads the runtime override before the on from the Nix store... I'll have to dig through the codebase now to see, whether "order of reading" == "order of evaluation" | 10:55:33 |
eliasp | hmm, according to strace, it reads the runtime override before the one from the Nix store... I'll have to dig through the codebase now to see, whether "order of reading" == "order of evaluation" | 10:55:42 |
eliasp | can't make any sense of it... implementation looks correct to me | 11:42:51 |
Alyssa Ross | iirc systemd priority is /etc -> /run -> /usr, so runtime overrides don't override /etc (for some reason) | 12:08:45 |
eliasp | oh, that'd render runtime overrides completely pointless for most NixOS services... double-checking the sd docs | 13:22:08 |
K900 | I don't think that's how it works | 13:22:30 |
K900 | /run should win | 13:22:32 |
Alyssa Ross | You'd think so | 13:24:45 |
Alyssa Ross | That would be the sensible and intuitive design | 13:25:11 |
eliasp | From the docs:
Drop-in files in /etc/ take precedence over those in /run/ which in turn take precedence over those in /usr/lib/.
| 13:31:11 |
eliasp | But looking at the table in "Unit File Load Path", it might be possible to use /run/systemd/transient instead… | 13:33:29 |
eliasp | unfortunately, systemctl edit doesn't understand --transient, so this has to be handled manually…
but we might want to rework the patch 0016-systemctl-edit-suggest-systemdctl-edit-runtime-on-sy.patch pointing people towards --runtime | 13:35:35 |
Ramses 🇵🇸 | Yeah, I ran into this in the past as well, /etc takes priority over /run, unfortunately. I didn't know about the transient stuff | 15:26:12 |