nix-deploy/config/hosts/wind/configuration.nix

76 lines
1.9 KiB
Nix
Raw Permalink Normal View History

2021-09-22 10:16:11 +02:00
{ config, pkgs, lib, ... }:
{
2022-02-26 16:09:12 +01:00
imports = [
./hardware-configuration.nix
../../common/services/ssh.nix
../../common/users.nix
2022-02-26 16:09:12 +01:00
./services/acme.nix
./services/coturn.nix
2022-04-12 15:46:59 +02:00
#./services/grocy.nix
2022-02-26 16:09:12 +01:00
./services/nginx.nix
./services/postgres.nix
./services/synapse.nix
./services/ttrss.nix
./services/gitea.nix
./services/restic.nix
./services/vaultwarden.nix
./services/wireguard.nix
2022-02-26 16:09:12 +01:00
./data/secrets/secrets.nix
];
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
boot.loader.grub.enable = true;
boot.loader.grub.version = 2;
boot.loader.grub.device = "/dev/sda";
boot.kernelPackages = pkgs.linuxPackages_5_10;
boot.supportedFilesystems = ["zfs"];
services.zfs.autoSnapshot.enable = true;
services.zfs.autoScrub.enable = true;
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
networking.hostName = "wind";
networking.hostId = "929e7fb7";
time.timeZone = "Europe/Copenhagen";
networking.useDHCP = false;
networking.interfaces.ens3.useDHCP = true;
networking.interfaces.ens3.ipv6.addresses = [ { address = "2a01:4f9:c010:34cb::1"; prefixLength = 64; } ];
networking.defaultGateway6 = { address = "fe80::1"; interface = "ens3"; };
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
users.users.deploy-web = {
isNormalUser = true;
extraGroups = [ "nginx" ];
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILk4m1uJzxd7pDmMZgnZxqD6lEIfVPf+I4tKPo0jJJrK deploy@drone.data.coop"
];
};
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
security.sudo.wheelNeedsPassword = false;
2022-02-26 16:09:12 +01:00
environment.systemPackages = with pkgs; [
vim
htop
iotop
dig
];
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
nix = {
autoOptimiseStore = true;
trustedUsers = [
"root"
"@wheel"
];
};
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
# Use hetzner firewall instead
networking.firewall.enable = false;
# networking.firewall.allowedTCPPorts = [ 22 80 443 3478 5349 ];
# networking.firewall.allowedUDPPorts = [ 3478 5349 ]
# networking.firewall.allowedUDPPortsRanges = [ { from = 49152; to = 49999; } ];
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
users.groups.acme.members = [ "nginx" "turnserver" "gitea" ];
users.groups.backup.members = [ "matrix-synapse" "postgres" "gitea" "vaultwarden" ];
2021-09-22 10:16:11 +02:00
2022-02-26 16:09:12 +01:00
system.stateVersion = "21.05";
2021-09-22 10:16:11 +02:00
}