diff options
Diffstat (limited to 'net-firewall/firewalld')
-rw-r--r-- | net-firewall/firewalld/Manifest | 1 | ||||
-rw-r--r-- | net-firewall/firewalld/files/firewalld-0.3.10-py3k-compat.patch | 24 | ||||
-rw-r--r-- | net-firewall/firewalld/files/firewalld.init | 13 | ||||
-rw-r--r-- | net-firewall/firewalld/firewalld-0.3.13.ebuild | 99 |
4 files changed, 137 insertions, 0 deletions
diff --git a/net-firewall/firewalld/Manifest b/net-firewall/firewalld/Manifest new file mode 100644 index 00000000..6468490e --- /dev/null +++ b/net-firewall/firewalld/Manifest @@ -0,0 +1 @@ +DIST firewalld-0.3.13.tar.bz2 561948 SHA256 bca88cbce4290b6959b3c0eea560e7f19c7cf2f563caca585b7db5cd2fca8ac9 SHA512 987ea3e243f87b8ded2f9627b4efc9649a22d878d19b6b760ba1a281e9e7280abcda558feebe6bd30e1cd27e7277a8ec99a7da623c29f04ab290c1d7ac3d6789 WHIRLPOOL 795f63fa5415c37ea9c6a835860dca4eb71879d1d69fcd6fbb022d0c4b4ab507d74e0e17098724846bd97246be3a98fab1d25134df69c9ac25db2fb77508b159 diff --git a/net-firewall/firewalld/files/firewalld-0.3.10-py3k-compat.patch b/net-firewall/firewalld/files/firewalld-0.3.10-py3k-compat.patch new file mode 100644 index 00000000..e91590f1 --- /dev/null +++ b/net-firewall/firewalld/files/firewalld-0.3.10-py3k-compat.patch @@ -0,0 +1,24 @@ +diff --git a/src/firewall/core/io/direct.py b/src/firewall/core/io/direct.py +index b698e4c..6b80201 100644 +--- a/src/firewall/core/io/direct.py ++++ b/src/firewall/core/io/direct.py +@@ -295,8 +295,8 @@ class Direct(IO_Object): + if len(self.passthroughs[ipv]) == 0: + del self.passthroughs[ipv] + else: +- raise ValueError, "Passthrough '%s' for ipv '%s'" % \ +- ("',".join(args), ipv) + "not in list" ++ raise ValueError("Passthrough '%s' for ipv '%s'" % \ ++ ("',".join(args), ipv) + "not in list") + + def query_passthrough(self, ipv, args): + return (ipv in self.passthroughs and args in self.passthroughs[ipv]) +@@ -305,7 +305,7 @@ class Direct(IO_Object): + if ipv in self.passthroughs: + return self.passthroughs[ipv] + else: +- raise ValueError, "No passthroughs for ipv '%s'" % (ipv) ++ raise ValueError("No passthroughs for ipv '%s'" % (ipv)) + + def get_all_passthroughs(self): + return self.passthroughs diff --git a/net-firewall/firewalld/files/firewalld.init b/net-firewall/firewalld/files/firewalld.init new file mode 100644 index 00000000..b1d7d15d --- /dev/null +++ b/net-firewall/firewalld/files/firewalld.init @@ -0,0 +1,13 @@ +#!/sbin/openrc-run +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description="FirewallD" +command=/usr/sbin/firewalld +pidfile=/var/run/firewalld.pid + +depend() { + need dbus + provide iptables ip6tables ebtables +} diff --git a/net-firewall/firewalld/firewalld-0.3.13.ebuild b/net-firewall/firewalld/firewalld-0.3.13.ebuild new file mode 100644 index 00000000..091ee2c2 --- /dev/null +++ b/net-firewall/firewalld/firewalld-0.3.13.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python{2_7,3_3,3_4} ) +#BACKPORTS= + +inherit autotools eutils gnome2-utils python-r1 systemd multilib bash-completion-r1 + +DESCRIPTION="A firewall daemon with D-BUS interface providing a dynamic firewall" +HOMEPAGE="http://fedorahosted.org/firewalld" +SRC_URI="https://fedorahosted.org/released/firewalld/${P}.tar.bz2 + ${BACKPORTS:+https://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="gui" + +RDEPEND="${PYTHON_DEPS} + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + >=dev-python/python-slip-0.2.7[dbus,${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + net-firewall/ebtables + net-firewall/iptables[ipv6] + || ( >=sys-apps/openrc-0.11.5 sys-apps/systemd ) + gui? ( x11-libs/gtk+:3 )" +DEPEND="${RDEPEND} + dev-libs/glib:2 + >=dev-util/intltool-0.35 + sys-devel/gettext" + +src_prepare() { + [[ -n ${BACKPORTS} ]] && \ + EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ + epatch + + epatch "${FILESDIR}/${PN}-0.3.10-py3k-compat.patch" + epatch_user + eautoreconf +} + +src_configure() { + python_setup + + econf \ + --enable-systemd \ + "$(systemd_with_unitdir 'systemd-unitdir')" \ + --with-bashcompletiondir="$(get_bashcompdir)" +} + +src_install() { + # manually split up the installation to avoid "file already exists" errors + emake -C config DESTDIR="${D}" install + emake -C po DESTDIR="${D}" install + emake -C shell-completion DESTDIR="${D}" install + emake -C doc DESTDIR="${D}" install + + install_python() { + emake -C src DESTDIR="${D}" pythondir="$(python_get_sitedir)" install + python_optimize + } + python_foreach_impl install_python + + python_replicate_script "${D}"/usr/bin/firewall-{offline-cmd,cmd,applet,config} + python_replicate_script "${D}/usr/sbin/firewalld" + + # Get rid of junk + rm -rf "${D}/etc/rc.d/" + rm -rf "${D}/etc/sysconfig/" + + # For non-gui installs we need to remove GUI bits + if ! use gui; then + rm -rf "${D}/etc/xdg/autostart" + rm -f "${D}/usr/bin/firewall-applet" + rm -f "${D}/usr/bin/firewall-config" + rm -rf "${D}/usr/share/icons" + rm -rf "${D}/usr/share/applications" + fi + + newinitd "${FILESDIR}"/firewalld.init firewalld +} + +pkg_preinst() { + gnome2_icon_savelist + gnome2_schemas_savelist +} + +pkg_postinst() { + gnome2_icon_cache_update + gnome2_schemas_update +} + +pkg_postrm() { + gnome2_icon_cache_update + gnome2_schemas_update +} |