diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-firewall/shorewall-lite | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-firewall/shorewall-lite')
12 files changed, 500 insertions, 0 deletions
diff --git a/net-firewall/shorewall-lite/Manifest b/net-firewall/shorewall-lite/Manifest new file mode 100644 index 000000000000..35c9d0db9d85 --- /dev/null +++ b/net-firewall/shorewall-lite/Manifest @@ -0,0 +1,4 @@ +DIST shorewall-docs-html-4.5.21.10.tar.bz2 4146174 SHA256 cdbc5f3654f7cfb6f0c3b3750a7174df8fa0590dfe34df055300140b3eb13192 SHA512 94852cc094d6a485cacc4023a2819431f1bfd80b8cbcab29981c422fdff9dfee90697ae8a9bda7ded3a8be03db516bdd5f4bcc4b83e7d01bc433a8c88d23731a WHIRLPOOL 6f02d0e3255dd1e31a43193f67f9b957546a6ae574631e61364f81244bee887e7f21c38f412fa21cde77b3d89aaf0e14e43909683db0c9c32edeb455c20b998e +DIST shorewall-docs-html-4.5.21.9.tar.bz2 4146065 SHA256 9056c22b8232d8276cc53a6eb74940bab42a250c670cb5baa42c75cfb89efdef SHA512 48b2c692ba59b7ec74307909e43a95104e212c9b8e21af7f0dd9f3438ac4f24a6fd2bcc6517966681517aef03beaa8faf03efd74406966d97b68cb416be8551b WHIRLPOOL f68cba7ecaf8c541e58d26c157914bff2d90cd9deae30af7323ca69c68d028217133f53e597bf383191aee83fab29203d233b3cd1e75e4cf08d9e17308dc25e4 +DIST shorewall-lite-4.5.21.10.tar.bz2 79456 SHA256 73f2e7101ca7ff296fa3a7be4dec6b6ec3ec562f5c0d746fe6e2355d2b8931e3 SHA512 145c18f7a2859bea9ce265d243a875e83fbbaa2c982f269f1401b73253133d8d48e1060c3b18aefdee09dbc8755fe3e875014dda354f38e90829f0d970b52718 WHIRLPOOL 0d7187d7ede8b01819c241fec61eeef03e17743845188f8e41b3448d814466994b8822e3dc166793d9b5b2b5f4b04dc33bd85664e09771746bc655756790e813 +DIST shorewall-lite-4.5.21.9.tar.bz2 79121 SHA256 af6c039d880581a6eaf7aba9f638ff86e471567b15e16adc607053651d1f50f5 SHA512 fb15881dc4d5fd05c8ca8421ee4a5deb0c9f6fdab955d0fc7dd371bf710706bf6d851bdb8ba00d0d34c1f7f1d2bc2cc39e9e9fe0a6d8b48ed4accc27c011462c WHIRLPOOL 2f8eb61da9b3eafdd184718054d14dfdef39afdf6e3724ee62c0386f12ea3aa3badcf959ee0351f8cdcd744cf4b262e168e5cd6afa677a8674d515541f0f2f80 diff --git a/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.confd b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.confd new file mode 100644 index 000000000000..e5957167b5b9 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.confd @@ -0,0 +1,15 @@ +# Global start/restart/stop options +# +OPTIONS="" + +# Start options +# +STARTOPTIONS="" + +# Stop options +# +STOPOPTIONS="" + +# Restart options +# +RESTARTOPTIONS="" diff --git a/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.initd b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.initd new file mode 100644 index 000000000000..4fdbe607bdf1 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.initd @@ -0,0 +1,82 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description='The Shoreline Firewall Lite, more commonly known as "Shorewall Lite", is' +description="${description} a high-level tool for configuring Netfilter." + +extra_commands="clear" +extra_started_commands="reset" + +description_clear="Clear will remove all rules and chains installed by" +description_clear="${description_clear} Shorewall Lite. The firewall is" +description_clear="${description_clear} then wide open and unprotected." + +description_reset="All the packet and byte counters in the firewall are reset." + +depend() { + need net + provide firewall + after ulogd +} + +status() { + local _retval + /sbin/shorewall-lite status 1>/dev/null + _retval=$? + if [ ${_retval} = '0' ]; then + einfo 'status: started' + mark_service_started "${SVCNAME}" + return 0 + else + einfo 'status: stopped' + mark_service_stopped "${SVCNAME}" + return 3 + fi +} + +start() { + ebegin "Starting shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} start ${STARTOPTIONS} 1>/dev/null + eend $? +} + +stop() { + ebegin "Stopping shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} stop ${STOPOPTIONS} 1>/dev/null + eend $? +} + +restart() { + # shorewall comes with its own control script that includes a + # restart function, so refrain from calling svc_stop/svc_start + # here. Note that this comment is required to fix bug 55576; + # runscript.sh greps this script... (09 Jul 2004 agriffis) + + ebegin "Restarting shorewall-lite" + /sbin/shorewall-lite status 1>/dev/null + if [ $? != 0 ] ; then + svc_start + else + /sbin/shorewall-lite ${OPTIONS} restart ${RESTARTOPTIONS} 1>/dev/null + fi + eend $? +} + +clear() { + # clear will remove all the rules and bring the system to an unfirewalled + # state. (21 Nov 2004 eldad) + + ebegin "Clearing all shorewall-lite rules and setting policy to ACCEPT" + /sbin/shorewall-lite ${OPTIONS} clear 1>/dev/null + eend $? +} + +reset() { + # reset the packet and byte counters in the firewall + + ebegin "Resetting the packet and byte counters in shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} reset 1>/dev/null + eend $? +} diff --git a/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.systemd b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.systemd new file mode 100644 index 000000000000..a7c932418a9c --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewall-lite.systemd @@ -0,0 +1,17 @@ +# +# The Shoreline Firewall Lite (Shorewall-Lite) Packet Filtering Firewall - V4.5 +# +[Unit] +Description=Shorewall IPv4 firewall lite +Documentation=man:shorewall-lite(8) http://www.shorewall.net/Documentation_Index.html +After=network.target + +[Service] +Type=oneshot +RemainAfterExit=yes +EnvironmentFile=/etc/conf.d/shorewall-lite +ExecStart=/sbin/shorewall-lite $OPTIONS start $STARTOPTIONS +ExecStop=/sbin/shorewall-lite $OPTIONS stop $STOPOPTIONS + +[Install] +WantedBy=multi-user.target diff --git a/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewallrc b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewallrc new file mode 100644 index 000000000000..46f5eb9a3603 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.10-r1/shorewallrc @@ -0,0 +1,23 @@ +# +# Gentoo Shorewall 4.5 rc file +# +BUILD= #Default is to detect the build system +HOST=gentoo #Gentoo GNU Linux +PREFIX=@GENTOO_PORTAGE_EPREFIX@/usr #Top-level directory for shared files, libraries, etc. +SHAREDIR=${PREFIX}/share #Directory for arch-neutral files. +LIBEXECDIR=${PREFIX}/share #Directory for executable scripts. +PERLLIBDIR=${PREFIX}/share/shorewall #Directory to install Shorewall Perl module directory +CONFDIR=@GENTOO_PORTAGE_EPREFIX@/etc #Directory where subsystem configurations are installed +SBINDIR=@GENTOO_PORTAGE_EPREFIX@/sbin #Directory where system administration programs are installed +MANDIR=${PREFIX}/share/man #Directory where manpages are installed. +INITDIR=${CONFDIR}/init.d #Directory where SysV init scripts are installed. +INITFILE=${PRODUCT} #Name of the product's installed SysV init script +INITSOURCE=init.gentoo.sh #Name of the distributed file to be installed as the SysV init script +ANNOTATED= #If non-zero, annotated configuration files are installed +SYSTEMD=@GENTOO_PORTAGE_EPREFIX@/usr/lib/systemd/system #Directory where .service files are installed (systems running systemd only) +SERVICEFILE=gentoo.service #Name of the distributed file to be installed as systemd service file +SYSCONFFILE=default.gentoo #Name of the distributed file to be installed in $SYSCONFDIR +SYSCONFDIR=${CONFDIR}/conf.d #Directory where SysV init parameter files are installed +SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR +VARLIB=@GENTOO_PORTAGE_EPREFIX@/var/lib #Directory where product variable data is stored. +VARDIR=${VARLIB}/${PRODUCT} #Directory where product variable data is stored. diff --git a/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.confd b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.confd new file mode 100644 index 000000000000..e5957167b5b9 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.confd @@ -0,0 +1,15 @@ +# Global start/restart/stop options +# +OPTIONS="" + +# Start options +# +STARTOPTIONS="" + +# Stop options +# +STOPOPTIONS="" + +# Restart options +# +RESTARTOPTIONS="" diff --git a/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.initd b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.initd new file mode 100644 index 000000000000..4fdbe607bdf1 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.initd @@ -0,0 +1,82 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description='The Shoreline Firewall Lite, more commonly known as "Shorewall Lite", is' +description="${description} a high-level tool for configuring Netfilter." + +extra_commands="clear" +extra_started_commands="reset" + +description_clear="Clear will remove all rules and chains installed by" +description_clear="${description_clear} Shorewall Lite. The firewall is" +description_clear="${description_clear} then wide open and unprotected." + +description_reset="All the packet and byte counters in the firewall are reset." + +depend() { + need net + provide firewall + after ulogd +} + +status() { + local _retval + /sbin/shorewall-lite status 1>/dev/null + _retval=$? + if [ ${_retval} = '0' ]; then + einfo 'status: started' + mark_service_started "${SVCNAME}" + return 0 + else + einfo 'status: stopped' + mark_service_stopped "${SVCNAME}" + return 3 + fi +} + +start() { + ebegin "Starting shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} start ${STARTOPTIONS} 1>/dev/null + eend $? +} + +stop() { + ebegin "Stopping shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} stop ${STOPOPTIONS} 1>/dev/null + eend $? +} + +restart() { + # shorewall comes with its own control script that includes a + # restart function, so refrain from calling svc_stop/svc_start + # here. Note that this comment is required to fix bug 55576; + # runscript.sh greps this script... (09 Jul 2004 agriffis) + + ebegin "Restarting shorewall-lite" + /sbin/shorewall-lite status 1>/dev/null + if [ $? != 0 ] ; then + svc_start + else + /sbin/shorewall-lite ${OPTIONS} restart ${RESTARTOPTIONS} 1>/dev/null + fi + eend $? +} + +clear() { + # clear will remove all the rules and bring the system to an unfirewalled + # state. (21 Nov 2004 eldad) + + ebegin "Clearing all shorewall-lite rules and setting policy to ACCEPT" + /sbin/shorewall-lite ${OPTIONS} clear 1>/dev/null + eend $? +} + +reset() { + # reset the packet and byte counters in the firewall + + ebegin "Resetting the packet and byte counters in shorewall-lite" + /sbin/shorewall-lite ${OPTIONS} reset 1>/dev/null + eend $? +} diff --git a/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.systemd b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.systemd new file mode 100644 index 000000000000..a7c932418a9c --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.9/shorewall-lite.systemd @@ -0,0 +1,17 @@ +# +# The Shoreline Firewall Lite (Shorewall-Lite) Packet Filtering Firewall - V4.5 +# +[Unit] +Description=Shorewall IPv4 firewall lite +Documentation=man:shorewall-lite(8) http://www.shorewall.net/Documentation_Index.html +After=network.target + +[Service] +Type=oneshot +RemainAfterExit=yes +EnvironmentFile=/etc/conf.d/shorewall-lite +ExecStart=/sbin/shorewall-lite $OPTIONS start $STARTOPTIONS +ExecStop=/sbin/shorewall-lite $OPTIONS stop $STOPOPTIONS + +[Install] +WantedBy=multi-user.target diff --git a/net-firewall/shorewall-lite/files/4.5.21.9/shorewallrc b/net-firewall/shorewall-lite/files/4.5.21.9/shorewallrc new file mode 100644 index 000000000000..46f5eb9a3603 --- /dev/null +++ b/net-firewall/shorewall-lite/files/4.5.21.9/shorewallrc @@ -0,0 +1,23 @@ +# +# Gentoo Shorewall 4.5 rc file +# +BUILD= #Default is to detect the build system +HOST=gentoo #Gentoo GNU Linux +PREFIX=@GENTOO_PORTAGE_EPREFIX@/usr #Top-level directory for shared files, libraries, etc. +SHAREDIR=${PREFIX}/share #Directory for arch-neutral files. +LIBEXECDIR=${PREFIX}/share #Directory for executable scripts. +PERLLIBDIR=${PREFIX}/share/shorewall #Directory to install Shorewall Perl module directory +CONFDIR=@GENTOO_PORTAGE_EPREFIX@/etc #Directory where subsystem configurations are installed +SBINDIR=@GENTOO_PORTAGE_EPREFIX@/sbin #Directory where system administration programs are installed +MANDIR=${PREFIX}/share/man #Directory where manpages are installed. +INITDIR=${CONFDIR}/init.d #Directory where SysV init scripts are installed. +INITFILE=${PRODUCT} #Name of the product's installed SysV init script +INITSOURCE=init.gentoo.sh #Name of the distributed file to be installed as the SysV init script +ANNOTATED= #If non-zero, annotated configuration files are installed +SYSTEMD=@GENTOO_PORTAGE_EPREFIX@/usr/lib/systemd/system #Directory where .service files are installed (systems running systemd only) +SERVICEFILE=gentoo.service #Name of the distributed file to be installed as systemd service file +SYSCONFFILE=default.gentoo #Name of the distributed file to be installed in $SYSCONFDIR +SYSCONFDIR=${CONFDIR}/conf.d #Directory where SysV init parameter files are installed +SPARSE= #If non-empty, only install $PRODUCT/$PRODUCT.conf in $CONFDIR +VARLIB=@GENTOO_PORTAGE_EPREFIX@/var/lib #Directory where product variable data is stored. +VARDIR=${VARLIB}/${PRODUCT} #Directory where product variable data is stored. diff --git a/net-firewall/shorewall-lite/metadata.xml b/net-firewall/shorewall-lite/metadata.xml new file mode 100644 index 000000000000..52ffdde3f9be --- /dev/null +++ b/net-firewall/shorewall-lite/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>netmon</herd> + <herd>proxy-maintainers</herd> + <maintainer> + <email>whissi@whissi.de</email> + <name>Thomas D. (Whissi)</name> + </maintainer> +</pkgmetadata> diff --git a/net-firewall/shorewall-lite/shorewall-lite-4.5.21.10-r1.ebuild b/net-firewall/shorewall-lite/shorewall-lite-4.5.21.10-r1.ebuild new file mode 100644 index 000000000000..d1dc86eae99a --- /dev/null +++ b/net-firewall/shorewall-lite/shorewall-lite-4.5.21.10-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils linux-info prefix systemd versionator + +MY_URL_PREFIX= +case ${P} in + *_beta* | \ + *_rc*) + MY_URL_PREFIX='development/' + ;; +esac + +MY_PV=${PV/_rc/-RC} +MY_PV=${MY_PV/_beta/-Beta} +MY_P=${PN}-${MY_PV} +MY_P_DOCS=shorewall-docs-html-${MY_PV} + +MY_MAJOR_RELEASE_NUMBER=$(get_version_component_range 1-2) +MY_MAJORMINOR_RELEASE_NUMBER=$(get_version_component_range 1-3) + +DESCRIPTION="An iptables-based firewall whose config is handled by a normal Shorewall" +HOMEPAGE="http://www.shorewall.net/" +SRC_URI=" + http://www1.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}/${MY_P}.tar.bz2 + doc? ( http://www1.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}/${MY_P_DOCS}.tar.bz2 ) +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 hppa ~ppc ~ppc64 ~sparc ~x86" +IUSE="doc" + +DEPEND="=net-firewall/shorewall-core-${PVR}" +RDEPEND=" + ${DEPEND} + >=net-firewall/iptables-1.4.20 + >=sys-apps/iproute2-3.8.0[-minimal] +" + +S=${WORKDIR}/${MY_P} + +pkg_pretend() { + local CONFIG_CHECK="~NF_CONNTRACK ~NF_CONNTRACK_IPV4" + + local ERROR_CONNTRACK="${PN} requires NF_CONNTRACK support." + + local ERROR_CONNTRACK_IPV4="${PN} requires NF_CONNTRACK_IPV4 support." + + check_extra_config +} + +src_prepare() { + cp "${FILESDIR}"/${PVR}/shorewallrc "${S}"/shorewallrc.gentoo || die "Copying shorewallrc failed" + eprefixify "${S}"/shorewallrc.gentoo + + cp "${FILESDIR}"/${PVR}/${PN}.confd "${S}"/default.gentoo || die "Copying ${PN}.confd failed" + cp "${FILESDIR}"/${PVR}/${PN}.initd "${S}"/init.gentoo.sh || die "Copying ${PN}.initd failed" + cp "${FILESDIR}"/${PVR}/${PN}.systemd "${S}"/gentoo.service || die "Copying ${PN}.systemd failed" + + epatch_user +} + +src_configure() { + :; +} + +src_compile() { + :; +} + +src_install() { + keepdir /var/lib/${PN} + + DESTDIR="${D}" ./install.sh shorewallrc.gentoo || die "install.sh failed" + + dodoc changelog.txt releasenotes.txt + if use doc; then + cd "${WORKDIR}/${MY_P_DOCS}" + dohtml -r * + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + # This is a new installation + elog "Before you can use ${PN}, you need to provide a configuration, which you can" + elog "create using ${CATEGORY}/shorewall (the full version, including the compiler)." + elog "" + elog "To activate ${PN} on system start, please add ${PN} to your default runlevel:" + elog "" + elog " # rc-update add ${PN} default" + fi + + if ! has_version ${CATEGORY}/shorewall-init; then + elog "" + elog "Starting with shorewall-lite-4.5.21.2, Gentoo also offers ${CATEGORY}/shorewall-init," + elog "which we recommend to install, to protect your firewall at system boot." + elog "" + elog "To read more about shorewall-init, please visit" + elog " http://www.shorewall.net/Shorewall-init.html" + fi +} diff --git a/net-firewall/shorewall-lite/shorewall-lite-4.5.21.9.ebuild b/net-firewall/shorewall-lite/shorewall-lite-4.5.21.9.ebuild new file mode 100644 index 000000000000..c9e35b3278f4 --- /dev/null +++ b/net-firewall/shorewall-lite/shorewall-lite-4.5.21.9.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils linux-info prefix systemd versionator + +MY_URL_PREFIX= +case ${P} in + *_beta* | \ + *_rc*) + MY_URL_PREFIX='development/' + ;; +esac + +MY_PV=${PV/_rc/-RC} +MY_PV=${MY_PV/_beta/-Beta} +MY_P=${PN}-${MY_PV} +MY_P_DOCS=shorewall-docs-html-${MY_PV} + +MY_MAJOR_RELEASE_NUMBER=$(get_version_component_range 1-2) +MY_MAJORMINOR_RELEASE_NUMBER=$(get_version_component_range 1-3) + +DESCRIPTION="An iptables-based firewall whose config is handled by a normal Shorewall" +HOMEPAGE="http://www.shorewall.net/" +SRC_URI=" + http://www1.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}/${MY_P}.tar.bz2 + doc? ( http://www1.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}/${MY_P_DOCS}.tar.bz2 ) +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86" +IUSE="doc" + +DEPEND="=net-firewall/shorewall-core-${PVR}" +RDEPEND=" + ${DEPEND} + >=net-firewall/iptables-1.4.20 + >=sys-apps/iproute2-3.8.0[-minimal] +" + +S=${WORKDIR}/${MY_P} + +pkg_pretend() { + local CONFIG_CHECK="~NF_CONNTRACK ~NF_CONNTRACK_IPV4" + + local ERROR_CONNTRACK="${PN} requires NF_CONNTRACK support." + + local ERROR_CONNTRACK_IPV4="${PN} requires NF_CONNTRACK_IPV4 support." + + check_extra_config +} + +src_prepare() { + cp "${FILESDIR}"/${PVR}/shorewallrc "${S}"/shorewallrc.gentoo || die "Copying shorewallrc failed" + eprefixify "${S}"/shorewallrc.gentoo + + cp "${FILESDIR}"/${PVR}/${PN}.confd "${S}"/default.gentoo || die "Copying ${PN}.confd failed" + cp "${FILESDIR}"/${PVR}/${PN}.initd "${S}"/init.gentoo.sh || die "Copying ${PN}.initd failed" + cp "${FILESDIR}"/${PVR}/${PN}.systemd "${S}"/gentoo.service || die "Copying ${PN}.systemd failed" + + epatch_user +} + +src_configure() { + :; +} + +src_compile() { + :; +} + +src_install() { + keepdir /var/lib/${PN} + + DESTDIR="${D}" ./install.sh shorewallrc.gentoo || die "install.sh failed" + + dodoc changelog.txt releasenotes.txt + if use doc; then + cd "${WORKDIR}/${MY_P_DOCS}" + dohtml -r * + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + # This is a new installation + elog "Before you can use ${PN}, you need to provide a configuration, which you can" + elog "create using ${CATEGORY}/shorewall (the full version, including the compiler)." + elog "" + elog "To activate ${PN} on system start, please add ${PN} to your default runlevel:" + elog "" + elog " # rc-update add ${PN} default" + fi + + if ! has_version ${CATEGORY}/shorewall-init; then + elog "" + elog "Starting with shorewall-lite-4.5.21.2, Gentoo also offers ${CATEGORY}/shorewall-init," + elog "which we recommend to install, to protect your firewall at system boot." + elog "" + elog "To read more about shorewall-init, please visit" + elog " http://www.shorewall.net/Shorewall-init.html" + fi +} |