nixpkgs/modules/config/timezone.nix

39 lines
758 B
Nix
Raw Normal View History

{ config, pkgs, ... }:
with pkgs.lib;
{
options = {
time = {
timeZone = mkOption {
default = "CET";
type = with types; uniq string;
example = "America/New_York";
description = "The time zone used when displaying times and dates.";
};
clockLocal = mkOption {
default = false;
description = "Keep the Hardware Clock in local time instead of UTC";
};
};
};
config = {
environment.shellInit =
''
export TZ=${config.time.timeZone}
export TZDIR=${pkgs.glibc}/share/zoneinfo
'';
environment.etc = singleton
{ source = "${pkgs.glibc}/share/zoneinfo/${config.time.timeZone}";
target = "localtime";
};
};
}