From 9aaf08d02e8f98bca4005a27c18127b1d1d87322 Mon Sep 17 00:00:00 2001 From: Chandler Swift Date: Thu, 5 Jun 2025 20:01:26 -0500 Subject: [PATCH 1/4] bert, oscar: Update factorio package --- bert/services/factorio.nix | 2 +- oscar/configuration.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bert/services/factorio.nix b/bert/services/factorio.nix index b6291ac..14747ff 100644 --- a/bert/services/factorio.nix +++ b/bert/services/factorio.nix @@ -4,7 +4,7 @@ ]; services.factorio = { enable = true; - package = (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/aa2922b69f0245008d93e9edf9f34894db724d89.tar.gz") { + package = (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/348ec8c846cce39c467cac90ddbbc9ce9bf61bd8.tar.gz") { config.allowUnfree = true; }).factorio-headless; openFirewall = true; diff --git a/oscar/configuration.nix b/oscar/configuration.nix index 44c472b..6cb71c6 100644 --- a/oscar/configuration.nix +++ b/oscar/configuration.nix @@ -178,7 +178,7 @@ # Unfree: discord - (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/aa2922b69f0245008d93e9edf9f34894db724d89.tar.gz") { + (import (fetchTarball "https://github.com/NixOS/nixpkgs/archive/348ec8c846cce39c467cac90ddbbc9ce9bf61bd8.tar.gz") { config.allowUnfree = true; }).factorio-space-age ]; From 318e37e164d638f1020e5bb08b7cc67bac8e009e Mon Sep 17 00:00:00 2001 From: Chandler Swift Date: Thu, 5 Jun 2025 20:08:20 -0500 Subject: [PATCH 2/4] bert: Add minecraft server 16 chars is the max for a minecraft username, so whitespace added to whitelist so even a max-length user won't overflow the space provided. --- bert/configuration.nix | 1 + bert/services/minecraft.nix | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 bert/services/minecraft.nix diff --git a/bert/configuration.nix b/bert/configuration.nix index 8277e24..3814822 100644 --- a/bert/configuration.nix +++ b/bert/configuration.nix @@ -6,6 +6,7 @@ ./hardware-configuration.nix ./services/factorio.nix ./services/http/index.nix + ./services/minecraft.nix ./services/monitoring.nix ./services/forgejo.nix ./services/navidrome.nix diff --git a/bert/services/minecraft.nix b/bert/services/minecraft.nix new file mode 100644 index 0000000..962ea77 --- /dev/null +++ b/bert/services/minecraft.nix @@ -0,0 +1,25 @@ +{ + services.minecraft-server = { + enable = true; + package = (import { + config.allowUnfree = true; + }).minecraft-server; + declarative = true; + eula = true; + dataDir = "/srv/minecraft"; + openFirewall = true; + whitelist = { + # https://minecraft.wiki/w/Server#Whitelist + chandlerswift = "1d933b23-bdf9-4f24-9c4c-e916b5df9f97"; + villlater = "ac160fee-e611-4a7c-b0a8-04cb1bbe850b"; + LarryHorton = "7d62d1dc-5998-4880-ba6f-c3a7021b8fd5"; + IsaacSwift = "a4291b69-4412-4c3e-bdbf-a9157f2a3df7"; + MaterialG0rLz = "63cf3db9-1771-454d-a9a9-75b202cc68df"; # Emily + Mayornnaise = "3e93628f-eaeb-4fe3-9adc-88709e1d4ced"; # Jacob + Ripptide66 = "67f7d5e9-739e-46f9-99a6-a3a6d99a2b04"; # Hunter + RowdyPancake = "ebdc4a28-4855-4bc9-bd8f-1624b4f587fa"; # Andrew + shalo123 = "5f34483c-40b4-4a68-a95d-5429f1f7711c"; # Jeff + }; + serverProperties.white-list = true; + }; +} From f937a9b31f84f852f106dbd40ec39300d9324c16 Mon Sep 17 00:00:00 2001 From: Chandler Swift Date: Fri, 6 Jun 2025 17:17:06 -0500 Subject: [PATCH 3/4] bigbird: Add restic rest server --- bigbird/backups.nix | 28 ++++++++++++++++++++++++++++ bigbird/configuration.nix | 3 ++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 bigbird/backups.nix diff --git a/bigbird/backups.nix b/bigbird/backups.nix new file mode 100644 index 0000000..c6735e8 --- /dev/null +++ b/bigbird/backups.nix @@ -0,0 +1,28 @@ +{pkgs, ...}: { + services.restic.server = { + enable = true; + prometheus = true; + privateRepos = true; + dataDir = "/nas/chandler/backups/restic"; + appendOnly = true; + extraFlags = [ + "--prometheus-no-auth" + ]; + }; + services.restic.backups = { + remotebackup = { + initialize = true; + environmentFile = "/etc/secrets/restic_env"; + passwordFile = "/etc/secrets/restic_pass"; + paths = [ + "/" + ]; + repository = "rest:http://bigbird:8000/bert/"; #"b2:chandlerswift-bert-backup/"; + pruneOpts = [ + "--keep-daily 7" + "--keep-weekly 5" + "--keep-monthly 12" + ]; + }; + }; +} diff --git a/bigbird/configuration.nix b/bigbird/configuration.nix index 0bac923..ad025c7 100644 --- a/bigbird/configuration.nix +++ b/bigbird/configuration.nix @@ -4,6 +4,7 @@ [ # Include the results of the hardware scan. # ./hardware-configuration.nix + ./backups.nix ./kathe.nix ./smb.nix ]; @@ -49,7 +50,7 @@ }; # Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; + networking.firewall.allowedTCPPorts = [ 8000 ]; # networking.firewall.allowedUDPPorts = [ ... ]; # Or disable the firewall altogether. # networking.firewall.enable = false; From 6e1b26a12d81aed668d906e163916f31c50404fa Mon Sep 17 00:00:00 2001 From: Chandler Swift Date: Fri, 6 Jun 2025 17:17:23 -0500 Subject: [PATCH 4/4] bigbird: Install tmux --- bigbird/configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/bigbird/configuration.nix b/bigbird/configuration.nix index ad025c7..ac7ed56 100644 --- a/bigbird/configuration.nix +++ b/bigbird/configuration.nix @@ -32,6 +32,7 @@ environment.systemPackages = with pkgs; [ vim rsync + tmux ]; services.openssh.enable = true;