1
0

vaultwarden.nix 821 B

123456789101112131415161718192021222324252627
  1. { config, ... }:
  2. let
  3. cfg = config.services.vaultwarden.config;
  4. in
  5. {
  6. services.vaultwarden.enable = true;
  7. services.vaultwarden.backupDir = "/mnt/storage/vaultwarden";
  8. services.vaultwarden.config = {
  9. ROCKET_ADDRESS = "127.0.0.1";
  10. ROCKET_PORT = 8222;
  11. };
  12. services.vaultwarden.environmentFile =
  13. config.age.secrets."odin/services/vaultwarden".path;
  14. users.users.vaultwarden.extraGroups = [ "storage" ];
  15. systemd.tmpfiles.rules = [
  16. "d /mnt/storage/vaultwarden 0755 vaultwarden storage -"
  17. ];
  18. services.cloudflared.tunnels."71c89a7f-2467-444c-9fda-4864860dc8c4" = {
  19. credentialsFile =
  20. config.age.secrets."odin/services/cloudflared-tunnel".path;
  21. default = "http_status:404";
  22. ingress."vault.t5.st".service =
  23. "http://${cfg.ROCKET_ADDRESS}:${toString cfg.ROCKET_PORT}";
  24. };
  25. }