net-firewall/firewalld: version bump to 0.73
authorMatthias Maier <tamiko@gentoo.org>
Tue, 17 Mar 2020 18:44:53 +0000 (13:44 -0500)
committerMatthias Maier <tamiko@gentoo.org>
Tue, 17 Mar 2020 21:07:31 +0000 (16:07 -0500)
Also fix dependencies and add USE=+nftables

 - The iptables (ip6tables, ebtables, ipset) backend for firewalld is
   nowadays entirely optional. Thus add a use flags to control which
   backend is used and configured at compile time.

   This allows to drop iptables from the set of installed packages
   alltogether.

 - In case both, xtables and nftables are set also depend on
   nftables[xtables].

 - install locales

Closes: https://bugs.gentoo.org/670932
Closes: https://bugs.gentoo.org/709856
Bug: https://bugs.gentoo.org/703322
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Matthias Maier <tamiko@gentoo.org>
net-firewall/firewalld/Manifest
net-firewall/firewalld/firewalld-0.7.3.ebuild [new file with mode: 0644]
net-firewall/firewalld/metadata.xml

index 7d22e200d995de9b4ccba2f2a6f484f7a0ddee6b..a8be639b1e7cc1c989edf994a0aa00af74d541f1 100644 (file)
@@ -1,2 +1,3 @@
 DIST firewalld-0.6.3.tar.gz 2294470 BLAKE2B 09bb971d8142e5d28b6a085527e7f5275090f15e5dc4ccf2b16b6ed837049ed75443b09a54db76e37c6f0c5db6524ba85cf34c5117c1139bba0e3b223f289d57 SHA512 ea9e8bad34d3608257ef2a38851855974eff97b21dbab93ca3d8cfad90339734a8124447ed531a978b41546ab4040135bb61c8fdc9677ba0df9188d7ee4422ee
 DIST firewalld-0.7.1.tar.gz 2326020 BLAKE2B 1ab435bfd97608ce246657a24daebe6ca83f72560a627c702e940de64bf4fb34f26ebe9abf62468972fd8cd9394c5e885acd6882ec3cad112dfe62bca3905c7a SHA512 6be842d4c2849f56fc0e6c13219aed7d767635a3b190ef41f1516cecf51de71ad9af77ccc96b699d11bed56407abf9837cdbd0cfbf93ab716b5de5e4c2f94c68
+DIST firewalld-0.7.3.tar.gz 1247590 BLAKE2B 80b34749ab47fa3f2733c6c2fe6dec9483b38baa3485c91875888ecce4bacc16a05e69d5734aaed017408ec2ba8b33155aa0c08e93b1f8eac5c6708682edf238 SHA512 49ab1403b29b215ef69d54baf9060826917ab2a6d632f0a53b458170576639e74580e4399e5c78a74bf12a4999479db86aadacbc17c749ab25e9de8ed686146f
diff --git a/net-firewall/firewalld/firewalld-0.7.3.ebuild b/net-firewall/firewalld/firewalld-0.7.3.ebuild
new file mode 100644 (file)
index 0000000..6e94cdf
--- /dev/null
@@ -0,0 +1,111 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python{2_7,3_6,3_7} )
+
+inherit autotools bash-completion-r1 gnome2-utils l10n linux-info python-single-r1 systemd xdg-utils
+
+DESCRIPTION="A firewall daemon with D-BUS interface providing a dynamic firewall"
+HOMEPAGE="http://www.firewalld.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="gui +nftables +iptables"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+       !!net-firewall/gshield
+       nftables? ( net-firewall/nftables[iptables?] )
+       iptables? (
+               net-firewall/iptables[ipv6]
+               net-firewall/ebtables
+               net-firewall/ipset
+       )
+       || ( >=sys-apps/openrc-0.11.5 sys-apps/systemd )
+       $(python_gen_cond_dep '
+               dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
+               dev-python/decorator[${PYTHON_MULTI_USEDEP}]
+               >=dev-python/python-slip-0.2.7[dbus,${PYTHON_MULTI_USEDEP}]
+               dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+               gui? (
+                       x11-libs/gtk+:3
+                       dev-python/PyQt5[gui,widgets,${PYTHON_MULTI_USEDEP}]
+               )
+       ')"
+DEPEND="${RDEPEND}
+       dev-libs/glib:2
+       >=dev-util/intltool-0.35
+       sys-devel/gettext"
+
+RESTRICT="test" # bug 650760
+
+PLOCALES="ar as bg bn_IN ca cs da de el en_GB en_US es et eu fi fr gl gu hi hu ia id it ja ka kn ko lt ml mr nl or pa pl pt pt_BR ru sk sq sr sr@latin sv ta te tr uk zh_CN zh_TW"
+
+pkg_setup() {
+       local CONFIG_CHECK="~NF_CONNTRACK ~NF_CONNTRACK_IPV4 ~NF_CONNTRACK_IPV6 ~NETFILTER_XT_MATCH_CONNTRACK"
+       linux-info_pkg_setup
+}
+
+src_prepare() {
+       default
+       eautoreconf
+
+       l10n_find_plocales_changes "po" "" ".po"
+       l10n_get_locales | sed -e 's/ /\n/g' > po/LINGUAS
+}
+
+src_configure() {
+       python_setup
+
+       local econf_args=(
+               --enable-systemd
+               $(use_with nftables nft "${EPREFIX}/sbin/nft")
+               $(use_with iptables iptables "${EPREFIX}/sbin/iptables")
+               $(use_with iptables iptables_restore "${EPREFIX}/sbin/iptables-restore")
+               $(use_with iptables ip6tables "${EPREFIX}/sbin/ip6tables")
+               $(use_with iptables ip6tables_restore "${EPREFIX}/sbin/ip6tables-restore")
+               $(use_with iptables ebtables "${EPREFIX}/sbin/ebtables")
+               $(use_with iptables ebtables_restore "${EPREFIX}/sbin/ebtables-restore")
+               $(use_with iptables ipset "${EPREFIX}/sbin/ipset")
+               --with-systemd-unitdir="$(systemd_get_systemunitdir)"
+               --with-bashcompletiondir="$(get_bashcompdir)"
+       )
+       econf "${econf_args[@]}"
+}
+
+src_install() {
+       default
+       python_optimize
+
+       # Get rid of junk
+       rm -rf "${D}/etc/rc.d/" || die
+       rm -rf "${D}/etc/sysconfig/" || die
+
+       # For non-gui installs we need to remove GUI bits
+       if ! use gui; then
+               rm -rf "${D}/etc/xdg/autostart" || die
+               rm -f "${D}/usr/bin/firewall-applet" || die
+               rm -f "${D}/usr/bin/firewall-config" || die
+               rm -rf "${D}/usr/share/applications" || die
+               rm -rf "${D}/usr/share/icons" || die
+       fi
+
+       newinitd "${FILESDIR}"/firewalld.init firewalld
+}
+
+pkg_preinst() {
+       gnome2_schemas_savelist
+}
+
+pkg_postinst() {
+       xdg_icon_cache_update
+       gnome2_schemas_update
+}
+
+pkg_postrm() {
+       xdg_icon_cache_update
+       gnome2_schemas_update
+}
index 121cd46cb5e1c6c61be3af1bb1abc0f213a7d616..96b274a47c90d1f96e8f6e0ec3f0a11ea6bdd06a 100644 (file)
@@ -5,4 +5,8 @@
                <email>virtualization@gentoo.org</email>
                <name>Gentoo Virtualization Project</name>
        </maintainer>
+       <use>
+               <flag name="nftables">Add support for <pkg>net-firewall/nftables</pkg> as firewall backend</flag>
+               <flag name="iptables">Add support for <pkg>net-firewall/nftables</pkg> as firewall backend</flag>
+       </use>
 </pkgmetadata>