diff options
| author | Caroline Larimore <caroline@larimo.re> | 2024-07-18 23:39:42 -0700 |
|---|---|---|
| committer | Caroline Larimore <caroline@larimo.re> | 2024-07-18 23:39:42 -0700 |
| commit | 65174b4b5c05bb143e6681a4cbcd0a95f04987e2 (patch) | |
| tree | 35383af43f2aa972b316dd12e1d5d1bd5df84086 /roles/minecraft/default.nix | |
| parent | 15c5050590415fd64e984e994ec77186918cf7b7 (diff) | |
Begin modularization!
Diffstat (limited to 'roles/minecraft/default.nix')
| -rw-r--r-- | roles/minecraft/default.nix | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/roles/minecraft/default.nix b/roles/minecraft/default.nix new file mode 100644 index 0000000..1af96d8 --- /dev/null +++ b/roles/minecraft/default.nix @@ -0,0 +1,29 @@ +{ config, pkgs, lib, inputs, ... }: +with lib; + +let cfg = config.roles.minecraft; in { + imports = [ + ./servers + ]; + + options.roles.minecraft = { + enable = mkEnableOption "minecraft server role"; + }; + + config = mkIf cfg.enable { + nixpkgs = { + overlays = [ inputs.nix-minecraft.overlay ]; + config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "minecraft-server" + ]; + }; + + programs.tmux.enable = true; + + services.minecraft-servers = { + enable = true; + eula = true; + openFirewall = true; + }; + }; +} |