39 lines
		
	
	
	
		
			810 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
	
		
			810 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   config,
 | |
|   lib,
 | |
|   namespace,
 | |
|   options,
 | |
|   ...
 | |
| }:
 | |
| with lib;
 | |
| with lib.${namespace};
 | |
| let
 | |
|   cfg = config.${namespace}.system.locale;
 | |
| in
 | |
| {
 | |
|   options.${namespace}.system.locale = with types; {
 | |
|     enable = mkBoolOpt false "Whether or not to manage locale settings.";
 | |
|   };
 | |
| 
 | |
|   config = mkIf cfg.enable {
 | |
|     i18n.defaultLocale = "en_US.UTF-8";
 | |
| 
 | |
|     i18n.extraLocaleSettings = {
 | |
|       LANG = "en_US.UTF-8";
 | |
|       LC_ALL = "en_US.UTF-8";
 | |
|       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";
 | |
|     };
 | |
| 
 | |
|     console = {
 | |
|       keyMap = mkForce "us";
 | |
|     };
 | |
|   };
 | |
| }
 |