mirror of
https://codeberg.org/jopejoe1/nix-conf.git
synced 2025-01-07 22:16:33 +01:00
40 lines
1,006 B
Nix
40 lines
1,006 B
Nix
{ options, config, pkgs, lib, ... }:
|
|
|
|
with lib;
|
|
#with lib.internal;
|
|
let cfg = config.custom.system.locale;
|
|
in
|
|
{
|
|
options.custom.system.locale = with types; {
|
|
enable = mkBoolOpt false "Whether or not to manage locale settings.";
|
|
layout = mkOpt str "de" "The Keyboard layout to use.";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
i18n = {
|
|
defaultLocale = "en_NZ.UTF-8";
|
|
extraLocaleSettings = {
|
|
LC_ADDRESS = "de_DE.UTF-8";
|
|
LC_IDENTIFICATION = "de_DE.UTF-8";
|
|
LC_MEASUREMENT = "de_DE.UTF-8";
|
|
LC_MONETARY = "de_DE.UTF-8";
|
|
LC_NAME = "de_DE.UTF-8";
|
|
LC_NUMERIC = "de_DE.UTF-8";
|
|
LC_PAPER = "de_DE.UTF-8";
|
|
LC_TELEPHONE = "de_DE.UTF-8";
|
|
LC_TIME = "de_DE.UTF-8";
|
|
LC_CTYPE = "de_DE.UTF-8";
|
|
LC_COLLATE = "de_DE.UTF-8";
|
|
LC_MESSAGES = "en_NZ.UTF-8";
|
|
};
|
|
};
|
|
console = {
|
|
enable = true;
|
|
keyMap = mkForce cfg.layout;
|
|
};
|
|
services.xserver = {
|
|
layout = cfg.layout;
|
|
};
|
|
|
|
};
|
|
}
|