mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-06-05 21:03:40 +00:00
nixos/firewalld: add reload triggers for config file changes
When firewalld serves as the backend for networking.firewall, changes to allowedTCPPorts, zones, settings etc. rewrite /etc/firewalld/* but firewalld.service was never reloaded. Add reloadTriggers pointing to firewalld.conf, all zone XMLs and service XMLs so switch-to-configuration reloads the daemon on nixos-rebuild switch. nixos/firewalld: treefmt
This commit is contained in:
@@ -57,7 +57,19 @@ in
|
||||
systemd.services.firewalld = {
|
||||
aliases = [ "dbus-org.fedoraproject.FirewallD1.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.ExecReload = "${lib.getExe' pkgs.coreutils "kill"} -HUP $MAINPID";
|
||||
serviceConfig.ExecReload = [
|
||||
""
|
||||
"${lib.getExe' pkgs.coreutils "kill"} -HUP $MAINPID"
|
||||
];
|
||||
reloadTriggers = [
|
||||
config.environment.etc."firewalld/firewalld.conf".source
|
||||
]
|
||||
++ lib.mapAttrsToList (
|
||||
name: _: config.environment.etc."firewalld/zones/${name}.xml".source
|
||||
) config.services.firewalld.zones
|
||||
++ lib.mapAttrsToList (
|
||||
name: _: config.environment.etc."firewalld/services/${name}.xml".source
|
||||
) config.services.firewalld.services;
|
||||
environment.NIX_FIREWALLD_CONFIG_PATH = "${paths}/lib/firewalld";
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user