gnu: Add iptables-nft.

* gnu/packages/linux.scm (iptables-nft): New variable.

Change-Id: I281514fcf05e70b4d62f374269c50c76bb676f78
This commit is contained in:
Hilton Chain 2023-09-12 13:47:02 +08:00
parent 521247658f
commit 6884770464
No known key found for this signature in database
GPG key ID: ACC66D09CA528292

View file

@ -3101,6 +3101,40 @@ (define-public iptables
'((release-monitoring-url . "https://www.netfilter.org/pub/iptables/")))
(license license:gpl2+)))
(define-public iptables-nft
(package
(inherit iptables)
(name "iptables-nft")
(source #f)
(build-system copy-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'unpack)
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(for-each
(lambda (command-path)
(let ((link-path (string-append #$output command-path)))
(mkdir-p (dirname link-path))
(symlink (search-input-file inputs "sbin/xtables-nft-multi")
link-path)))
(apply append
'("/bin/iptables-xml")
(map (lambda (xtables)
(list (string-append "/sbin/" xtables)
(string-append "/sbin/" xtables "-restore")
(string-append "/sbin/" xtables "-save")))
'("arptables"
"ebtables"
"iptables"
"ip6tables")))))))))
(inputs (list iptables))
(native-inputs '())
(synopsis
"Programs to configure Linux IP packet filtering rules (nftables API)")))
(define-public bolt
(package
(name "bolt")