Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-firewall/nftables/
Date: Fri, 23 Aug 2019 17:02:41
Message-Id: 1566579754.45bf97d12e222087b4b7f4fde6cd69deed12a37b.polynomial-c@gentoo
1 commit: 45bf97d12e222087b4b7f4fde6cd69deed12a37b
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Fri Aug 23 17:02:20 2019 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Fri Aug 23 17:02:34 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=45bf97d1
7
8 net-firewall/nftables: Bump to version 0.9.2
9
10 Package-Manager: Portage-2.3.72, Repoman-2.3.17
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 net-firewall/nftables/Manifest | 1 +
14 net-firewall/nftables/nftables-0.9.2.ebuild | 138 ++++++++++++++++++++++++++++
15 2 files changed, 139 insertions(+)
16
17 diff --git a/net-firewall/nftables/Manifest b/net-firewall/nftables/Manifest
18 index 139c43a83f8..02cd9f86c8b 100644
19 --- a/net-firewall/nftables/Manifest
20 +++ b/net-firewall/nftables/Manifest
21 @@ -1,2 +1,3 @@
22 DIST nftables-0.9.0.tar.gz 417981 BLAKE2B 4dfba4d71928f1694ffeb4871353fc373d88e23c5ba716e726e1e6aba0efb2703233528f7a408bfefe47bfe54aa3612cccab9742c2a2208ec8c7a4bcda0e1823 SHA512 78e383bad5440c9414202cf0e4b6749fc5c01071d2fa547208e61cea6e7e179933990e7e538a60696eb0a7cf510d2c4b273a91d50287bb51507d244cd2875aed
23 DIST nftables-0.9.1.tar.bz2 764066 BLAKE2B 26b194d6b3b970c05348c32a3ab21e8c25fcdb0d09d3d6b467198ba23a5bb44e7b6450d3efb86c39a488df4a837885c4a1ab96c197d5449f7de49b7b18ff5f90 SHA512 e14b75197ba3fea2a46c090450bf8b45b39fdc20db67bab1d6919c90128dee8ea8bbe9508e070f86b22ec70bcad8ab584fb89630a2240f09683137471c77d242
24 +DIST nftables-0.9.2.tar.bz2 779850 BLAKE2B 40bf9ed956a126048f27b343afc7aa4f6e34f35dc91127402cb127903f8150d212c80491fef2b54c18a63ca065608521062b3f6a2dd78969bdbf4d7d8a5a751d SHA512 2d83b104af0d70f99a16c2e40afdb9bf89bd984323810e2895976c5e2e346bf09dd88850a391f295e335279adfdd39d34c13610cf8e6b801499dc0df2a5cecf6
25
26 diff --git a/net-firewall/nftables/nftables-0.9.2.ebuild b/net-firewall/nftables/nftables-0.9.2.ebuild
27 new file mode 100644
28 index 00000000000..983784f71ba
29 --- /dev/null
30 +++ b/net-firewall/nftables/nftables-0.9.2.ebuild
31 @@ -0,0 +1,138 @@
32 +# Copyright 1999-2019 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=7
36 +
37 +PYTHON_COMPAT=( python3_{5,6,7} )
38 +
39 +inherit autotools linux-info python-r1 systemd
40 +
41 +DESCRIPTION="Linux kernel (3.13+) firewall, NAT and packet mangling tools"
42 +HOMEPAGE="https://netfilter.org/projects/nftables/"
43 +#SRC_URI="https://git.netfilter.org/nftables/snapshot/v${PV}.tar.gz -> ${P}.tar.gz"
44 +SRC_URI="https://netfilter.org/projects/nftables/files/${P}.tar.bz2"
45 +
46 +LICENSE="GPL-2"
47 +SLOT="0"
48 +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~x86"
49 +IUSE="debug +doc +gmp json +modern_kernel python +readline static-libs xtables"
50 +
51 +RDEPEND="
52 + >=net-libs/libmnl-1.0.3:0=
53 + gmp? ( dev-libs/gmp:0= )
54 + json? ( dev-libs/jansson )
55 + python? ( ${PYTHON_DEPS} )
56 + readline? ( sys-libs/readline:0= )
57 + >=net-libs/libnftnl-1.1.4:0=
58 + xtables? ( >=net-firewall/iptables-1.6.1 )
59 +"
60 +
61 +DEPEND="${RDEPEND}"
62 +
63 +BDEPEND="
64 + doc? ( app-text/asciidoc )
65 + >=app-text/docbook2X-0.8.8-r4
66 + sys-devel/bison
67 + sys-devel/flex
68 + virtual/pkgconfig
69 +"
70 +
71 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
72 +
73 +#S="${WORKDIR}/v${PV}"
74 +
75 +python_make() {
76 + emake \
77 + -C py \
78 + abs_builddir="${S}" \
79 + DESTDIR="${D}" \
80 + PYTHON_BIN="${PYTHON}" \
81 + ${@}
82 +}
83 +
84 +pkg_setup() {
85 + if kernel_is ge 3 13; then
86 + if use modern_kernel && kernel_is lt 3 18; then
87 + eerror "The modern_kernel USE flag requires kernel version 3.18 or newer to work properly."
88 + fi
89 + CONFIG_CHECK="~NF_TABLES"
90 + linux-info_pkg_setup
91 + else
92 + eerror "This package requires kernel version 3.13 or newer to work properly."
93 + fi
94 +}
95 +
96 +src_prepare() {
97 + default
98 +
99 + # fix installation path for doc stuff
100 + sed '/^pkgsysconfdir/s@${sysconfdir}.*$@${docdir}@' \
101 + -i files/nftables/Makefile.am || die
102 + sed '/^pkgsysconfdir/s@${sysconfdir}.*$@${docdir}/osf@' \
103 + -i files/osf/Makefile.am || die
104 +
105 + eautoreconf
106 +}
107 +
108 +src_configure() {
109 + local myeconfargs=(
110 + # We handle python separately
111 + --disable-python
112 + --sbindir="${EPREFIX}"/sbin
113 + $(use_enable debug)
114 + $(use_enable doc man-doc)
115 + $(use_with !gmp mini_gmp)
116 + $(use_with json)
117 + $(use_with readline cli)
118 + $(use_enable static-libs static)
119 + $(use_with xtables)
120 + )
121 + econf "${myeconfargs[@]}"
122 +}
123 +
124 +src_compile() {
125 + default
126 +
127 + if use python ; then
128 + python_foreach_impl python_make
129 + fi
130 +}
131 +
132 +src_install() {
133 + default
134 +
135 + local mksuffix="$(usex modern_kernel '-mk' '')"
136 +
137 + exeinto /usr/libexec/${PN}
138 + newexe "${FILESDIR}"/libexec/${PN}${mksuffix}.sh ${PN}.sh
139 + newconfd "${FILESDIR}"/${PN}${mksuffix}.confd ${PN}
140 + newinitd "${FILESDIR}"/${PN}${mksuffix}.init ${PN}
141 + keepdir /var/lib/nftables
142 +
143 + systemd_dounit "${FILESDIR}"/systemd/${PN}-restore.service
144 +
145 + if use python ; then
146 + python_foreach_impl python_make install
147 + fi
148 +
149 + find "${ED}" -type f -name "*.la" -delete || die
150 +}
151 +
152 +pkg_postinst() {
153 + local save_file
154 + save_file="${EROOT}/var/lib/nftables/rules-save"
155 +
156 + # In order for the nftables-restore systemd service to start
157 + # the save_file must exist.
158 + if [[ ! -f ${save_file} ]]; then
159 + touch ${save_file}
160 + fi
161 +
162 + elog "If you wish to enable the firewall rules on boot (on systemd) you"
163 + elog "will need to enable the nftables-restore service."
164 + elog " 'systemd_enable_service basic.target ${PN}-restore.service'"
165 + elog
166 + elog "If you are creating firewall rules before the next system restart "
167 + elog "the nftables-restore service must be manually started in order to "
168 + elog "save those rules on shutdown."
169 +}