diff --git a/hosts/andromache/default.nix b/hosts/andromache/default.nix index b9c7bac..0c540a7 100644 --- a/hosts/andromache/default.nix +++ b/hosts/andromache/default.nix @@ -31,7 +31,7 @@ in ../../modules/firewall ../../modules/fonts ../../modules/gaming - (import ../../modules/networking { hostName = config.host.name; }) + ../../modules/networking ../../modules/keyboard ../../modules/localization ../../modules/nvidia diff --git a/hosts/astyanax/default.nix b/hosts/astyanax/default.nix index 26f48ae..b8abb1f 100644 --- a/hosts/astyanax/default.nix +++ b/hosts/astyanax/default.nix @@ -27,7 +27,7 @@ in ../../modules/backups ../../modules/bluetooth ../../modules/keyboard - (import ../../modules/networking { hostName = config.host.name; }) + ../../modules/networking ../../modules/users ../../modules/localization ../../modules/fonts diff --git a/hosts/vm/default.nix b/hosts/vm/default.nix index 69f9ede..224b278 100644 --- a/hosts/vm/default.nix +++ b/hosts/vm/default.nix @@ -14,7 +14,7 @@ ../../modules/common ../../modules/boot/bootloader.nix ../../modules/keyboard - (import ../../modules/networking { hostName = config.host.name; }) + ../../modules/networking ../../modules/users ../../modules/audio ../../modules/localization @@ -32,7 +32,6 @@ inherit inputs config pkgs; }; - networking.hostName = config.host.name; ssh.username = config.host.username; secrets.username = config.host.username; diff --git a/modules/common/host.nix b/modules/common/host.nix index 515319c..124a0c6 100644 --- a/modules/common/host.nix +++ b/modules/common/host.nix @@ -9,5 +9,15 @@ name = lib.mkOption { type = lib.types.str; }; + + timezone = lib.mkOption { + type = lib.types.str; + default = "Europe/Brussels"; + }; + + locale = lib.mkOption { + type = lib.types.str; + default = "en_US.UTF-8"; + }; }; } diff --git a/modules/desktops/niri/default.nix b/modules/desktops/niri/default.nix index be10cf2..1b9dd12 100644 --- a/modules/desktops/niri/default.nix +++ b/modules/desktops/niri/default.nix @@ -1,4 +1,9 @@ -{ config, lib, ... }: +{ + config, + lib, + pkgs, + ... +}: let cfg = config.desktop; @@ -16,6 +21,11 @@ in config = { programs.niri.enable = true; + xdg.portal = { + enable = true; + extraPortals = [ pkgs.xdg-desktop-portal-gnome ]; + }; + services = { dbus.enable = true; logind.settings.Login = { diff --git a/modules/localization/default.nix b/modules/localization/default.nix index 6029538..934bd90 100644 --- a/modules/localization/default.nix +++ b/modules/localization/default.nix @@ -1,4 +1,6 @@ +{ config, ... }: + { - time.timeZone = "Europe/Brussels"; - i18n.defaultLocale = "en_US.UTF-8"; + time.timeZone = config.host.timezone; + i18n.defaultLocale = config.host.locale; } diff --git a/modules/networking/default.nix b/modules/networking/default.nix index 256b970..d2471a1 100644 --- a/modules/networking/default.nix +++ b/modules/networking/default.nix @@ -1,11 +1,8 @@ -{ - hostName ? "nixos", - ... -}: +{ config, ... }: { networking = { - inherit hostName; + hostName = config.host.name; wireless.iwd.enable = true; networkmanager.wifi.backend = "iwd"; nftables.enable = true; diff --git a/modules/users/default.nix b/modules/users/default.nix index 30934b4..f7e4417 100644 --- a/modules/users/default.nix +++ b/modules/users/default.nix @@ -1,7 +1,9 @@ +{ config, ... }: + { - users.users.h = { + users.users.${config.host.username} = { isNormalUser = true; - description = "h"; + description = config.host.username; extraGroups = [ "wheel" ]; initialPassword = "h"; };