mirror of
https://github.com/TheWanderingCrow/CrOS.git
synced 2026-01-30 01:54:18 -05:00
55 lines
1.2 KiB
Nix
55 lines
1.2 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
...
|
|
}:
|
|
lib.mkIf config.user.overseer.enable {
|
|
###########
|
|
# Service #
|
|
###########
|
|
|
|
sops = {
|
|
secrets."umami/secret" = {};
|
|
secrets."umami/db_url" = {};
|
|
secrets."umami/db_pass" = {};
|
|
templates."umami-env".content = ''
|
|
APP_SECRET=${config.sops.placeholder."umami/secret"}
|
|
DATABASE_TYPE=mysql
|
|
DATABASE_URL=${config.sops.placeholder."umami/db_url"}
|
|
'';
|
|
templates."umami-sql".content = ''
|
|
ALTER USER 'umami"@'localhost' IDENTIFIED BY '${config.sops.placeholder."umami/db_pass"}';
|
|
'';
|
|
};
|
|
|
|
services.mysql = {
|
|
enable = true;
|
|
initialDatabases = [
|
|
{
|
|
name = "umami";
|
|
}
|
|
];
|
|
initialScript = config.sops.templates."umami-sql".path;
|
|
ensureUsers = [
|
|
{
|
|
name = "umami";
|
|
ensurePermissions = {
|
|
"umami.*" = "ALL PRIVILEGES";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
|
|
virtualisation.oci-containers = {
|
|
backend = "podman";
|
|
containers = {
|
|
umami = {
|
|
image = "ghcr.io/umami-software/umami:mysql-v2.15.1";
|
|
ports = ["3000:3000"];
|
|
environmentFiles = [
|
|
config.sops.templates."umami-env".path
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|