Update modules/server/containers/apps/authentik.nix
This commit is contained in:
@@ -2,11 +2,23 @@
|
||||
let
|
||||
version = "2026.2.2";
|
||||
serverCfg = config.syscfg.server;
|
||||
mediaCfg = config.syscfg.media;
|
||||
authentikBackground = if mediaCfg.banner.png != null then mediaCfg.banner.png else mediaCfg.bg;
|
||||
logoSvgFileName = builtins.baseNameOf (toString mediaCfg.logo.svg);
|
||||
logoIcoFileName = builtins.baseNameOf (toString mediaCfg.logo.ico);
|
||||
backgroundFileName = builtins.baseNameOf (toString authentikBackground);
|
||||
logoSvgMount = "/media/custom/${logoSvgFileName}";
|
||||
logoIcoMount = "/media/custom/${logoIcoFileName}";
|
||||
backgroundMount = "/media/custom/${backgroundFileName}";
|
||||
authentikData = builder.mkData {
|
||||
name = "authentik"; dir = "authentik"; vars = {
|
||||
AUTHENTIK_DOMAIN = "${containerCfg.subdomain}.${serverCfg.domain}";
|
||||
COOKIE_DOMAIN = "${serverCfg.domain}";
|
||||
AUTHENTIK_LDAP_DC_DOMAIN = "dc=ldap," + (lib.concatMapStringsSep "," (x: "dc=${x}") (lib.splitString "." serverCfg.domain));
|
||||
AUTHENTIK_BRANDING_TITLE = if containerCfg.extra ? name then containerCfg.extra.name else "authentik";
|
||||
AUTHENTIK_BRANDING_LOGO = "custom/${logoSvgFileName}";
|
||||
AUTHENTIK_BRANDING_FAVICON = "custom/${logoIcoFileName}";
|
||||
AUTHENTIK_BRANDING_BACKGROUND = "custom/${backgroundFileName}";
|
||||
}
|
||||
// (if serverCfg.containers?jellyfin then { JELLYFIN_DOMAIN = "${serverCfg.containers.jellyfin.subdomain}.${serverCfg.domain}";} else {})
|
||||
// (if serverCfg.containers?gitea then { GITEA_DOMAIN = "${serverCfg.containers.gitea.subdomain}.${serverCfg.domain}";} else {})
|
||||
@@ -60,6 +72,9 @@ in {
|
||||
"${serverCfg.path.config}/authentik/media:/media"
|
||||
"${serverCfg.path.config}/authentik/templates:/templates"
|
||||
"${authentikData}:/blueprints/custom:ro"
|
||||
"${mediaCfg.logo.svg}:${logoSvgMount}:ro"
|
||||
"${mediaCfg.logo.ico}:${logoIcoMount}:ro"
|
||||
"${authentikBackground}:${backgroundMount}:ro"
|
||||
];
|
||||
};
|
||||
};
|
||||
@@ -82,6 +97,9 @@ in {
|
||||
"${serverCfg.path.config}/authentik/media:/media"
|
||||
"${serverCfg.path.config}/authentik/templates:/templates"
|
||||
"${authentikData}:/blueprints/custom:ro"
|
||||
"${mediaCfg.logo.svg}:${logoSvgMount}:ro"
|
||||
"${mediaCfg.logo.ico}:${logoIcoMount}:ro"
|
||||
"${authentikBackground}:${backgroundMount}:ro"
|
||||
];
|
||||
};
|
||||
};
|
||||
@@ -103,6 +121,7 @@ in {
|
||||
AK="${pkgs.podman}/bin/podman --events-backend=none exec --env-file ${config.sops.secrets."CUSTOM".path} -e DOMAIN=${serverCfg.domain} -u root authentik-worker ak"
|
||||
|
||||
$AK apply_blueprint /blueprints/custom/authentik.yaml
|
||||
$AK apply_blueprint /blueprints/custom/branding.yaml
|
||||
$AK apply_blueprint /blueprints/custom/traefik.yaml
|
||||
$AK apply_blueprint /blueprints/custom/ldap.yaml
|
||||
|
||||
|
||||
Reference in New Issue
Block a user