nixos/tzupdate: make enabled module actually be enabled

Without this fix, when setting `services.tzupdate.enable = true`, the service would never run automatically.

Now, it's actually enabled in systemd and it actually gets executed.

Still, it could be improved with a timer as explained in https://github.com/NixOS/nixpkgs/issues/127984#issuecomment-2512059143, but this makes it at least work out of the box when rebooting the system.
This commit is contained in:
Jairo Llopis
2025-04-08 07:35:10 +01:00
committed by Jairo Llopis
parent 01e6f08361
commit e2b65c0239
+4 -3
View File
@@ -26,11 +26,12 @@ in
# zone, which is better than silently overriding it.
time.timeZone = null;
# We provide a one-shot service which can be manually run. We could
# provide a service that runs on startup, but it's tricky to get
# a service to run after you have *internet* access.
# We provide a one-shot service that runs at startup once network
# interfaces are up, but we cant ensure we actually have Internet access
# at that point. It can also be run manually with `systemctl start tzupdate`.
systemd.services.tzupdate = {
description = "tzupdate timezone update service";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network-online.target" ];
script = ''