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
|
2024-09-08 06:29:17 +02:00
|
|
|
./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;
|
|
|
|
|
2024-07-12 21:51:41 +02:00
|
|
|
services.logrotate.checkConfig = false; # because uid 3000 does not exist in here
|
2023-12-09 17:15:50 +01:00
|
|
|
|
2024-02-28 23:17:23 +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;
|
|
|
|
|
2024-08-08 19:25:19 +02:00
|
|
|
features.network.fail2ban.enable = true;
|
2024-08-08 16:39:50 +02:00
|
|
|
features.boot.ssh.enable = true;
|
2024-08-02 23:40:57 +02:00
|
|
|
|
2024-10-16 16:18:47 +02:00
|
|
|
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 ];
|
2024-09-30 05:05:17 +02:00
|
|
|
healthchecks.closed.public.ports.opentelemetry = [ 4317 ];
|
2024-05-15 11:59:24 +02:00
|
|
|
|
2023-12-09 17:15:50 +01:00
|
|
|
security.acme.acceptTerms = true;
|
|
|
|
security.acme.defaults.email = "contact@ingolf-wagner.de";
|
|
|
|
|
2024-09-30 05:05:17 +02:00
|
|
|
healthchecks.closed.wg0.host = "10.100.0.1";
|
|
|
|
healthchecks.closed.public.host = "orbi.public";
|
2024-09-13 09:32:10 +02:00
|
|
|
|
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
|
|
|
}
|