SRC = ./ NFT = nftables.conf all: $(info run make makeconf to unify .nft files into nftables.conf) $(info run make install to install nftables.conf in /etc and set as current ruleset) $(info run make uninstall to replace /etc/nftables.conf with backup and set as current ruleset) makeconf: $(info running makeconf.sh) $(SRC)makeconf.sh test: makeconf $(info checking configuration for errors and possible optimizations) nft -c -o -f $(SRC)$(NFT) backup: $(info backing up current nftables rules) cp /etc/nftables.conf $(SRC)backup.conf || nft list ruleset > $(SRC)backup.conf install: test backup $(info installing new nftables rules) cp $(SRC)$(NFT) /etc/nftables.conf $(info reloading nftables rules) nft -f /etc/nftables.conf uninstall: $(info replacing nftables.conf with backup) cp $(SRC)backup.conf /etc/nftables.conf $(info reloading nftables rules) nft -f /etc/nftables.conf