Files
nixos-config/hosts/m3-hermes/configuration.nix
T

74 lines
1.7 KiB
Nix
Raw Normal View History

2026-04-07 06:19:05 +02:00
{pkgs, ...}: {
imports = [
./disko-config.nix
./hardware-configuration.nix
];
# Bootloader.
boot.loader.grub = {
efiSupport = true;
efiInstallAsRemovable = true;
};
networking.hostName = "m3-hermes";
networking.hostId = "a1b2c3d4"; # TODO: Generate unique hostId
networking.networkmanager.enable = true;
# Matrix homeserver pin: DNS on this host resolves exclusively via the
# Netbird-managed resolver (see /etc/resolv.conf → wt0). When the Netbird
# nameserver group is unreachable, matrix.m3ta.dev fails to resolve and the
# gateway cannot log in (observed 2026-08-16). Pinning the public IP of
# m3-atlas (TLS termination for matrix.m3ta.dev) makes the Matrix connection
# independent of Netbird DNS health. Update here if the m3-atlas public IP
# ever changes.
networking.hosts = {
"152.53.85.162" = ["matrix.m3ta.dev"];
};
2026-04-07 06:19:05 +02:00
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
2026-04-09 19:56:19 +02:00
environment.systemPackages = with pkgs; [
neovim
git
2026-04-26 10:48:52 +02:00
tea
2026-04-09 19:56:19 +02:00
ghostty.terminfo
2026-04-29 16:18:41 +02:00
uv
2026-04-09 19:56:19 +02:00
];
2026-04-07 06:19:05 +02:00
services.openssh = {
enable = true;
settings = {
PermitRootLogin = "no";
PasswordAuthentication = false;
};
};
2026-04-14 18:36:55 +02:00
security.sudo.extraRules = [
{
users = ["hermes"];
commands = [
{
command = "/run/current-system/sw/bin/podman";
options = ["NOPASSWD"];
}
];
}
];
2026-04-07 06:19:05 +02:00
services.fstrim = {
enable = true;
interval = "weekly";
};
# Firewall: outbound only, SSH inbound
networking.firewall = {
enable = true;
allowedTCPPorts = [22]; # SSH only
allowedUDPPorts = [];
allowPing = false;
};
system.stateVersion = "25.05";
}