| 
									
										
										
										
											2025-01-01 14:47:09 +00:00
										 |  |  | { config, lib, ... }: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | with lib; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2025-03-05 15:09:06 +00:00
										 |  |  |   options.nixosModules.vaultwarden.enable = mkEnableOption "Enable vaultwarden"; | 
					
						
							| 
									
										
										
										
											2025-01-01 14:47:09 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-05 15:09:06 +00:00
										 |  |  |   config = mkIf config.nixosModules.vaultwarden.enable { | 
					
						
							| 
									
										
										
										
											2025-01-01 14:47:09 +00:00
										 |  |  |     services = { | 
					
						
							|  |  |  |       vaultwarden = { | 
					
						
							|  |  |  |         enable = true; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         config = { | 
					
						
							| 
									
										
										
										
											2025-01-21 00:46:13 +00:00
										 |  |  |           DOMAIN = "https://vaultwarden.oliverdavies.uk"; | 
					
						
							| 
									
										
										
										
											2025-01-01 14:47:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |           # TODO: check registrations are disabled. | 
					
						
							|  |  |  |           SIGNUPS_ALLOWED = false; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |           ROCKET_ADDRESS = "127.0.0.1"; | 
					
						
							|  |  |  |           ROCKET_PORT = 8222; | 
					
						
							|  |  |  |         }; | 
					
						
							|  |  |  |       }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-21 00:46:13 +00:00
										 |  |  |       caddy.virtualHosts."vaultwarden.oliverdavies.uk" = { | 
					
						
							|  |  |  |         useACMEHost = "oliverdavies.uk"; | 
					
						
							| 
									
										
										
										
											2025-01-01 14:47:09 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |         extraConfig = "reverse_proxy localhost:${toString config.services.vaultwarden.config.ROCKET_PORT}"; | 
					
						
							|  |  |  |       }; | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | } |