forked from jan-leila/nix-config
		
	feat: added per service enable options for fail2ban configs
This commit is contained in:
		
							parent
							
								
									ecec04a9ce
								
							
						
					
					
						commit
						a8af8930fa
					
				
					 4 changed files with 59 additions and 31 deletions
				
			
		|  | @ -310,7 +310,7 @@ | ||||||
| 
 | 
 | ||||||
|     forgejo = { |     forgejo = { | ||||||
|       enable = true; |       enable = true; | ||||||
|       domain = "git.jan-leila.com"; |       reverseProxy.domain = "git.jan-leila.com"; | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     searx = { |     searx = { | ||||||
|  |  | ||||||
|  | @ -4,7 +4,16 @@ | ||||||
|   pkgs, |   pkgs, | ||||||
|   ... |   ... | ||||||
| }: { | }: { | ||||||
|   config = lib.mkIf (config.services.forgejo.enable && config.services.fail2ban.enable) { |   options.services.forgejo = { | ||||||
|  |     fail2ban = { | ||||||
|  |       enable = lib.mkOption { | ||||||
|  |         type = lib.types.bool; | ||||||
|  |         default = config.services.forgejo.enable && config.services.fail2ban.enable; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   config = lib.mkIf config.services.forgejo.fail2ban.enable { | ||||||
|     environment.etc = { |     environment.etc = { | ||||||
|       "fail2ban/filter.d/forgejo.local".text = lib.mkIf config.services.forgejo.enable ( |       "fail2ban/filter.d/forgejo.local".text = lib.mkIf config.services.forgejo.enable ( | ||||||
|         pkgs.lib.mkDefault (pkgs.lib.mkAfter '' |         pkgs.lib.mkDefault (pkgs.lib.mkAfter '' | ||||||
|  |  | ||||||
|  | @ -3,8 +3,17 @@ | ||||||
|   pkgs, |   pkgs, | ||||||
|   config, |   config, | ||||||
|   ... |   ... | ||||||
| }: | }: { | ||||||
| lib.mkIf (config.services.fail2ban.enable && config.services.home-assistant.enable) { |   options.services.home-assistant = { | ||||||
|  |     fail2ban = { | ||||||
|  |       enable = lib.mkOption { | ||||||
|  |         type = lib.types.bool; | ||||||
|  |         default = config.services.fail2ban.enable && config.services.home-assistant.enable; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   config = lib.mkIf config.services.home-assistant.fail2ban.enable { | ||||||
|     environment.etc = { |     environment.etc = { | ||||||
|       "fail2ban/filter.d/hass.local".text = ( |       "fail2ban/filter.d/hass.local".text = ( | ||||||
|         pkgs.lib.mkDefault (pkgs.lib.mkAfter '' |         pkgs.lib.mkDefault (pkgs.lib.mkAfter '' | ||||||
|  | @ -36,4 +45,5 @@ lib.mkIf (config.services.fail2ban.enable && config.services.home-assistant.enab | ||||||
|         }; |         }; | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
|  |   }; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -4,7 +4,16 @@ | ||||||
|   pkgs, |   pkgs, | ||||||
|   ... |   ... | ||||||
| }: { | }: { | ||||||
|   config = lib.mkIf (config.services.fail2ban.enable && config.services.immich.enable) { |   options.services.immich = { | ||||||
|  |     fail2ban = { | ||||||
|  |       enable = lib.mkOption { | ||||||
|  |         type = lib.types.bool; | ||||||
|  |         default = config.services.fail2ban.enable && config.services.immich.enable; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   config = lib.mkIf config.services.immich.fail2ban.enable { | ||||||
|     environment.etc = { |     environment.etc = { | ||||||
|       "fail2ban/filter.d/immich.local".text = pkgs.lib.mkDefault (pkgs.lib.mkAfter '' |       "fail2ban/filter.d/immich.local".text = pkgs.lib.mkDefault (pkgs.lib.mkAfter '' | ||||||
|         [Definition] |         [Definition] | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue