nixos-config/machines/orbi/configuration.nix

89 lines
2.1 KiB
Nix
Raw Normal View History

2024-08-29 03:26:04 +02:00
{
lib,
config,
pkgs,
modulesPath,
...
}:
{
2023-12-09 17:15:50 +01:00
imports = [
2024-08-08 17:30:08 +02:00
(modulesPath + "/profiles/hardened.nix")
2024-03-03 10:52:46 +01:00
./hardware-configuration
2023-12-09 17:15:50 +01:00
../../system/all/defaults.nix
2024-03-03 10:52:46 +01:00
2024-07-19 21:33:09 +02:00
./service-forgejo-runner.nix
2024-07-22 00:19:08 +02:00
./service-forgejo.nix
2024-05-18 23:57:31 +02:00
./service-hedgedoc.nix
2024-07-22 00:19:08 +02:00
./service-nix-cache.nix
2024-05-10 23:17:45 +02:00
./service-photoprism.nix
2024-09-03 13:21:26 +02:00
# ./service-surrealdb.nix # not really needed at the moment
./service-taskchampion.nix
2024-05-18 23:57:31 +02:00
./service-vaultwarden.nix
2024-07-22 00:19:08 +02:00
./service-wastebin.nix
2024-04-12 20:56:42 +02:00
./nginx-ingolf-wagner-de.nix
./nginx-wkd.nix
2024-02-16 22:21:05 +01:00
2024-03-03 21:58:52 +01:00
./network-tinc.nix
2024-04-07 17:58:36 +02:00
./network-wireguard.nix
2024-02-16 22:21:05 +01:00
2024-05-18 23:57:31 +02:00
./media-arr.nix
./media-jellyfin.nix
./media-nextcloud.nix
2024-04-07 10:18:13 +02:00
./media-share.nix
2024-04-17 10:00:17 +02:00
./media-syncthing.nix
2024-04-07 10:18:13 +02:00
./media-transmission2.nix
2024-02-16 22:21:05 +01:00
2024-05-27 21:02:15 +02:00
#./social-jitsi.nix
2024-04-04 21:26:10 +02:00
./social-matrix-terranix.nix
2023-12-09 17:15:50 +01:00
2024-08-30 12:34:57 +02:00
./topology.nix
2023-12-09 17:15:50 +01:00
];
2024-08-08 17:30:08 +02:00
2024-09-03 13:20:29 +02:00
networking.firewall.enable = true;
services.logrotate.checkConfig = false; # because uid 3000 does not exist in here
2023-12-09 17:15:50 +01:00
networking.hostName = "orbi";
2024-02-16 22:21:05 +01:00
2023-12-09 17:15:50 +01:00
components.terminal.enable = true;
components.mainUser.enable = true;
components.gui.enable = false;
components.network.enable = true;
2024-04-12 20:56:42 +02:00
components.network.nginx.landingpage.enable = false;
2023-12-09 17:15:50 +01:00
components.network.wifi.enable = false;
features.network.fail2ban.enable = true;
2024-08-08 16:39:50 +02:00
features.boot.ssh.enable = true;
telemetry.enable = true;
telemetry.opentelemetry.receiver.endpoint = "0.0.0.0:4317";
telemetry.opentelemetry.exporter.endpoint = "10.100.0.2:4317"; # chnungus
2024-08-08 17:30:08 +02:00
networking.firewall.interfaces.wg0.allowedTCPPorts = [ 4317 ];
networking.firewall.interfaces.wg0.allowedUDPPorts = [ 4317 ];
healthchecks.closed.public.ports.opentelemetry = [ 4317 ];
2023-12-09 17:15:50 +01:00
security.acme.acceptTerms = true;
security.acme.defaults.email = "contact@ingolf-wagner.de";
healthchecks.closed.wg0.host = "10.100.0.1";
healthchecks.closed.public.host = "orbi.public";
2024-04-04 22:24:48 +02:00
# chungus rsync
2024-08-29 03:26:04 +02:00
users.users.root.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJkqVvuJSvRMO5pG2CHNNBxjB7HlJudK4TQs3BhbOWOD"
];
2024-04-04 22:24:48 +02:00
2024-05-19 01:29:29 +02:00
# todo : need this for syncoid
environment.systemPackages = [
pkgs.mbuffer
pkgs.lzop
pkgs.gzip
];
2023-12-09 17:15:50 +01:00
}