nix/nixos/default.nix
2024-03-21 22:42:48 +09:00

52 lines
1.6 KiB
Nix

{ inputs, lib, pkgs, hostname, stateVersion, username, desktop, system, ... }: {
imports = [
# Modules
inputs.disko.nixosModules.disko
# Services
./common/services/openssh.nix
./common/services/promtail.nix
./common/services/fail2ban.nix
./common/services/telegraf.nix
./common/services/tailscale.nix
./common/services/gnupg-agent.nix
./common/services/opensnitch.nix
# Software
./common/software/cli/weechat.nix
./common/software/packages.nix
# NixOS Modules
./common/modules/fonts.nix # Font Configs
./common/modules/networking.nix # Initial Networking configs
./common/modules/nixos.nix # NixOS related items
./common/modules/remote-builders.nix # Add remote builders
./users/${username}
./hosts/${hostname}
] ++ lib.optional (builtins.isString desktop) ./common/desktops/${desktop};
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
# https://github.com/NixOS/nixpkgs/issues/180175#issuecomment-1658731959
systemd.services.NetworkManager-wait-online = {
serviceConfig = {
ExecStart = [ "" "${pkgs.networkmanager}/bin/nm-online -q" ];
};
};
system.stateVersion = stateVersion;
nixpkgs.hostPlatform = system;
}