summaryrefslogtreecommitdiff
path: root/nixos/modules/general-settings/default.nix
diff options
context:
space:
mode:
authortriethyl <triethylammonium@pm.me>2025-09-02 10:48:21 -0400
committertriethyl <triethylammonium@pm.me>2025-09-02 10:48:21 -0400
commit31c316d19cd974bb81a5d6de62142ff24db1c78e (patch)
treecb941422c76cb8953830a8d58c8e14dca1a10319 /nixos/modules/general-settings/default.nix
parent1c21018347aa277caba74e554cb8d1b1e7fc6bed (diff)
reorganized directory structure
Diffstat (limited to 'nixos/modules/general-settings/default.nix')
-rw-r--r--nixos/modules/general-settings/default.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/nixos/modules/general-settings/default.nix b/nixos/modules/general-settings/default.nix
new file mode 100644
index 0000000..0001f5f
--- /dev/null
+++ b/nixos/modules/general-settings/default.nix
@@ -0,0 +1,45 @@
+{ config, pkgs, lib, ... }: let
+ cfg = config.general-settings;
+in {
+ options.general-settings = {
+ hostname = lib.mkOption {
+ type = lib.types.str;
+ default = "nixos";
+ description = "system hostname";
+ };
+ locale = lib.mkOption {
+ type = lib.types.str;
+ default = "en_US.UTF-8";
+ description = "system locale";
+ };
+ timezone = lib.mkOption {
+ type = lib.types.str;
+ default = "America/New_York";
+ description = "system timezone";
+ };
+ stateVersion = lib.mkOption {
+ type = lib.types.str;
+ default = "24.11";
+ description = "nixos stateversion";
+ };
+ };
+ config = {
+ environment.systemPackages = [ pkgs.home-manager ];
+ system.stateVersion = cfg.stateVersion;
+ nixpkgs.config.allowUnfree = true;
+ networking.hostName = cfg.hostname;
+ time.timeZone = cfg.timezone;
+ i18n.defaultLocale = cfg.locale;
+ i18n.extraLocaleSettings = {
+ LC_ADDRESS = cfg.locale;
+ LC_IDENTIFICATION = cfg.locale;
+ LC_MEASUREMENT = cfg.locale;
+ LC_MONETARY = cfg.locale;
+ LC_NAME = cfg.locale;
+ LC_NUMERIC = cfg.locale;
+ LC_PAPER = cfg.locale;
+ LC_TELEPHONE = cfg.locale;
+ LC_TIME = cfg.locale;
+ };
+ };
+}