1
0
Fork 0
forked from lukas/nixos-config
nixos-config/hosts/pinix/localServices/vikunja.nix
pijukka 017fbe39c6 service(pinix): allow non-routable webhook targets in vikunja
Vikunja's SSRF protection blocked outgoing webhook requests to the
tailnet (100.64.0.0/10), so the already-configured webhook rows never
delivered. Verified live with a real task change after the fix:
message landed in vikunja@muc.0ff.space. Documents both this and the
earlier MUC room-creation finding in CLAUDE.md/roadmap.
2026-07-28 22:50:19 +02:00

32 lines
1 KiB
Nix

{ config, ... }:
{
services.vikunja = {
enable = true;
port = 8026;
frontendScheme = "https";
frontendHostname = "board.${config.domain}";
settings = {
service.enableregistration = false;
# Webhook targets live on the tailnet (100.64.0.0/10), which Vikunja's
# SSRF protection blocks by default ("prohibited IP address").
outgoingrequests.allownonroutableips = true;
auth = {
local.enabled = false;
openid = {
enabled = true;
redirecturl = "https://board.${config.domain}/auth/openid/";
providers.dex = {
name = "dex";
authurl = "https://dex.${config.domain}/dex";
clientid = "vikunja";
clientsecret.file = "$CREDENTIALS_DIRECTORY/oidc-client-secret";
};
};
};
};
};
# Pass the OIDC secret through a private systemd credential file.
systemd.services.vikunja.serviceConfig.LoadCredential =
"oidc-client-secret:${config.age.secrets.oidcVikunja.path}";
}