diff --git a/hosts/default.nix b/hosts/default.nix index 6b27a0e..426072a 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -5,6 +5,7 @@ in with tools.dns; { # NixOS machines VEGAS = import ./VEGAS tools; prophet = import ./prophet tools; + soda = import ./soda tools; # Non-NixOS machine metadata AnimusAlpha = let hostNames = [ "alpha.animus.com" "animus.com" ]; in { diff --git a/hosts/soda/default.nix b/hosts/soda/default.nix new file mode 100644 index 0000000..825635b --- /dev/null +++ b/hosts/soda/default.nix @@ -0,0 +1,22 @@ +tools: { + ssh.id = with tools.dns; { + publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDShq3dbZy9SARsH8aSjfMQ+/eTW44eZuHVCLvgtDNKw"; + hostNames = subResolve "soda" "int"; + }; + + interfaces = { + primary = { + addr = "10.10.2.206"; + addrPublic = "95.216.8.12"; + link = "eth0"; + }; + }; + + enterprise = { + subdomain = "int"; + }; + + arch = "x86_64"; + nixos = import ./system.nix; + container = true; +} diff --git a/hosts/soda/soda.nix b/hosts/soda/soda.nix new file mode 100644 index 0000000..6132402 --- /dev/null +++ b/hosts/soda/soda.nix @@ -0,0 +1,8 @@ +{ + environment.systemPackages = [ + # provide some editors + nano + vim + neovim + ]; +} diff --git a/hosts/soda/system.nix b/hosts/soda/system.nix new file mode 100644 index 0000000..e6cf987 --- /dev/null +++ b/hosts/soda/system.nix @@ -0,0 +1,30 @@ +{ pkgs, aspect, hosts, tools, ... }: + +{ + imports = with aspect; [ + modules.fail2ban + modules.nix-config-server + modules.sss + ./soda.nix + ] ++ sets.base ++ sets.networking; + + boot.isContainer = true; + + networking.useDHCP = false; + + networking.interfaces.eth0.useDHCP = true; + + networking.nameservers = [ hosts.VEGAS.interfaces.vstub.addr ]; + + networking.resolvconf.extraConfig = "local_nameservers='${hosts.VEGAS.interfaces.vstub.addr}'"; + + networking.hostName = "soda"; + + time.timeZone = "Europe/Helsinki"; + + i18n.defaultLocale = "en_US.UTF-8"; + + services.openssh.enable = true; + + system.stateVersion = "21.11"; +}