infrastructure/nixos/vouch/default.nix
2024-09-05 01:00:09 -07:00

37 lines
960 B
Nix

{
config,
pkgs,
lib,
...
}: let
inherit (lib.modules) mkIf mkMerge mkDefault;
cfg = config.services.vouch-proxy;
enableKeycloak = true;
hassVouch = false;
in {
services.vouch-proxy = {
enable = mkDefault true;
package = mkIf hassVouch (pkgs.vouch-proxy.overrideAttrs (old: {
postPatch =
''
sed -i handlers/login.go \
-e 's/badStrings *=.*$/badStrings = []string{}/'
''
+ old.postPatch or "";
doCheck = false;
}));
settings = mkMerge [
{
vouch.listen = mkDefault "0.0.0.0";
vouch.cookie.secure = mkDefault false;
}
(mkIf enableKeycloak {
oauth = {
auth_url = mkDefault "${cfg.authUrl}/protocol/openid-connect/auth";
token_url = mkDefault "${cfg.authUrl}/protocol/openid-connect/token";
user_info_url = mkDefault "${cfg.authUrl}/protocol/openid-connect/userinfo";
};
})
];
};
}