diff --git a/nixos/_mixins/features/time/default.nix b/nixos/_mixins/features/time/default.nix index 4b32e3320..8d4becbbb 100644 --- a/nixos/_mixins/features/time/default.nix +++ b/nixos/_mixins/features/time/default.nix @@ -1,22 +1,35 @@ -_: { +{ + hostname, + lib, + ... +}: +let + isServer = hostname == "malak" || hostname == "revan"; + useGeoclue = !isServer; +in +{ location = { provider = "geoclue2"; }; services = { - automatic-timezoned.enable = true; + automatic-timezoned.enable = useGeoclue; geoclue2 = { enable = true; enableNmea = false; # https://github.com/NixOS/nixpkgs/issues/321121 - geoProviderUrl = "https://beacondb.net/v1/geolocate"; - submissionNick = "geoclue"; - submissionUrl = "https://beacondb.net/v2/geosubmit"; + geoProviderUrl = "https://www.googleapis.com/geolocation/v1/geolocate?key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM"; }; - localtimed.enable = true; + localtimed.enable = useGeoclue; }; + # Prevent "Failed to open /etc/geoclue/conf.d/:" errors + systemd.tmpfiles.rules = [ + "d /etc/geoclue/conf.d 0755 root root" + ]; + time = { hardwareClockInLocalTime = true; + timeZone = lib.mkIf isServer "UTC"; }; }