| 
									
										
										
										
											2025-05-03 22:30:39 +01:00
										 |  |  | { config, lib, ... }: | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-15 23:13:11 +00:00
										 |  |  | let | 
					
						
							| 
									
										
										
										
											2025-05-03 22:30:39 +01:00
										 |  |  |   service = "pihole"; | 
					
						
							|  |  |  |   port = config.homelab.ports.${service}; | 
					
						
							| 
									
										
										
										
											2024-12-15 23:13:11 +00:00
										 |  |  | in | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2025-05-03 22:30:39 +01:00
										 |  |  |   virtualisation.oci-containers.containers.${service} = { | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     image = "pihole/pihole:latest"; | 
					
						
							| 
									
										
										
										
											2025-04-19 11:45:23 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     environment = { | 
					
						
							|  |  |  |       PIHOLE_DNS_1 = "8.8.8.8"; | 
					
						
							|  |  |  |       PIHOLE_DNS_2 = "8.8.4.4"; | 
					
						
							|  |  |  |       TZ = "Europe/London"; | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  |     }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     volumes = [ | 
					
						
							|  |  |  |       "/home/opdavies/pihole/etc-dnsmasq.d:/etc/dnsmasq.d:rw" | 
					
						
							|  |  |  |       "/home/opdavies/pihole/etc-pihole:/etc/pihole:rw" | 
					
						
							|  |  |  |     ]; | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     ports = [ | 
					
						
							|  |  |  |       "53:53/tcp" | 
					
						
							|  |  |  |       "53:53/udp" | 
					
						
							|  |  |  |       "67:67/udp" | 
					
						
							| 
									
										
										
										
											2025-05-03 22:30:39 +01:00
										 |  |  |       "${port}:80/tcp" | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     ]; | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     log-driver = "journald"; | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |     extraOptions = [ | 
					
						
							|  |  |  |       "--cap-add=NET_ADMIN" | 
					
						
							|  |  |  |     ]; | 
					
						
							|  |  |  |   }; | 
					
						
							| 
									
										
										
										
											2025-04-19 11:45:23 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-04-21 12:36:43 +01:00
										 |  |  |   systemd.services."podman-pihole".serviceConfig = { | 
					
						
							|  |  |  |     Restart = lib.mkOverride 90 "always"; | 
					
						
							|  |  |  |     RestartSec = lib.mkOverride 90 "1s"; | 
					
						
							| 
									
										
										
										
											2024-12-11 21:58:48 +00:00
										 |  |  |   }; | 
					
						
							|  |  |  | } |