27 lines
815 B
Nix
27 lines
815 B
Nix
{
|
|
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
|
|
};
|
|
}
|