systemd 258 has the following changes noted in systemd.resource-control(5):
> `CPUAccounting=` setting is deprecated, because it is always available on the unified cgroup hierarchy and such setting has no effect.
This commit removes it from the three services using it directly, as well as one instance of example text.
Signed-off-by: benaryorg <binary@benary.org>
This workardoung is now unnecessary because systemd and
systemd-timesyncd will never actually revert to a time lower than the
current system time. It will only *advance* the system time to the EPOCH
if the system time is lower.
This also makes systemd-timesyncd bashless as we remove the preStart
script for any NixOS version newer than 19.09.
We absolutely do not want to leave an incomplete file behind in /boot
since an incomplete initrd would render the machine unbootable. Errors
while writing are relatively common, mostly due to full /boot
partitions.
systemd-boot-builder does never attempt to re-write already existing
files which means that such situations are not fixable by re-running
nixos-rebuild etc. Instead the user needs to know about internals of the
systemd-boot and manually delete the correct file to recover from a
partially written kernel or (more commonly) initrd in /boot.
Note that this used to be a non issue since systemd-boot-builder used to
always delete all kernels and initrds before copying kernels and
initrds, so dest.exist() would always return False. This was fixed in
f2ca990558, revealing the underlying bad
assumption (that copyfile() always succeeds or fails without writing
anything).
The solution is to write to a temporary file first and move it to the
destination path only after this has succeeded. This way, if an error
occurs during copying, only a file distinct from dest is left behind
which would be cleaned up by subsequent runs of remove_old_entries().
Resolves#444066.