{ inputs, config, lib, pkgs, system, ... }: let cfg = config.services.minecraft; in { config = lib.mkIf (cfg.enable && (cfg.servers.velocity.enable || cfg.servers.survival.enable)) { services.mysql = { package = pkgs.mariadb; enable = true; settings.mysqld.port = 3459; }; sops.secrets."minecraft/database/luckperms_password" = { sopsFile = ./secrets.yaml; }; sops.templates."minecraft/database/database-init.sql".content = '' CREATE DATABASE 'luckperms'; CREATE USER 'luckperms'@'localhost'; GRANT ALL PRIVILEGES ON luckperms.* TO 'luckperms'@'localhost' IDENTIFIED BY '${config.sops.placeholder."minecraft/database/luckperms_password"}'; ''; # services.mysqlBackup.databases = [ "luckperms" ]; # Add Luckperms Database to Backups }; }