diff options
| author | Leander Scherer <leander@schererleander.de> | 2026-01-08 02:48:11 +0100 |
|---|---|---|
| committer | Leander Scherer <leander@schererleander.de> | 2026-01-08 19:08:12 +0100 |
| commit | 6174f3650cf42aaf008012e828d5a1f8e2ce037f (patch) | |
| tree | 9bbbd99680cd5adb56596a14734d4896bc6af733 /modules/hosts/system | |
| parent | c582c4d0675aada46fa196b7af1941ed753d055f (diff) | |
refactor(modules): separate nixos/home-manager modules, use standard option conventions
Diffstat (limited to 'modules/hosts/system')
| -rw-r--r-- | modules/hosts/system/default.nix | 10 | ||||
| -rw-r--r-- | modules/hosts/system/localisation.nix | 24 | ||||
| -rw-r--r-- | modules/hosts/system/network.nix | 14 | ||||
| -rw-r--r-- | modules/hosts/system/nix-options.nix | 18 | ||||
| -rw-r--r-- | modules/hosts/system/users.nix | 22 |
5 files changed, 88 insertions, 0 deletions
diff --git a/modules/hosts/system/default.nix b/modules/hosts/system/default.nix new file mode 100644 index 0000000..93452a6 --- /dev/null +++ b/modules/hosts/system/default.nix @@ -0,0 +1,10 @@ +{ ... }: + +{ + imports = [ + ./localisation.nix + ./network.nix + ./nix-options.nix + ./users.nix + ]; +} diff --git a/modules/hosts/system/localisation.nix b/modules/hosts/system/localisation.nix new file mode 100644 index 0000000..229c45f --- /dev/null +++ b/modules/hosts/system/localisation.nix @@ -0,0 +1,24 @@ +{ ... }: + +let + locale = "de_DE.UTF-8"; +in +{ + # Set your time zone. + time.timeZone = "Europe/Berlin"; + + # Select internationalisation properties. + i18n.defaultLocale = locale; + i18n.extraLocaleSettings = { + LC_ADDRESS = locale; + LC_IDENTIFICATION = locale; + LC_MEASUREMENT = locale; + LC_MONETARY = locale; + LC_NAME = locale; + LC_NUMERIC = locale; + LC_PAPER = locale; + LC_TELEPHONE = locale; + LC_TIME = locale; + }; + console.keyMap = "de"; +} diff --git a/modules/hosts/system/network.nix b/modules/hosts/system/network.nix new file mode 100644 index 0000000..383480b --- /dev/null +++ b/modules/hosts/system/network.nix @@ -0,0 +1,14 @@ +{ + host, + ... +}: + +{ + networking = { + hostName = host; + networkmanager.enable = true; + }; + + # Improve startup time + systemd.services.NetworkManager-wait-online.enable = false; +} diff --git a/modules/hosts/system/nix-options.nix b/modules/hosts/system/nix-options.nix new file mode 100644 index 0000000..14d7fb7 --- /dev/null +++ b/modules/hosts/system/nix-options.nix @@ -0,0 +1,18 @@ +{ ... }: + +{ + nix = { + settings = { + experimental-features = [ + "nix-command" + "flakes" + ]; + auto-optimise-store = true; + }; + gc = { + automatic = true; + dates = "daily"; + options = "--delete-older-than 15d"; + }; + }; +} diff --git a/modules/hosts/system/users.nix b/modules/hosts/system/users.nix new file mode 100644 index 0000000..5ecdfba --- /dev/null +++ b/modules/hosts/system/users.nix @@ -0,0 +1,22 @@ +{ + config, + username, + pkgs, + lib, + ... +}: + +{ + users.users."${username}" = { + isNormalUser = true; + extraGroups = [ + "wheel" + "video" + "input" + (lib.mkIf config.networking.networkmanager.enable "networkmanager") + ]; + shell = pkgs.zsh; + ignoreShellProgramCheck = true; + }; + security.sudo.wheelNeedsPassword = false; +} |
