# 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 Shorewall6" 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[ipv6] >=sys-apps/iproute2-3.8.0[-minimal] >=dev-perl/Socket6-0.230.0 " S=${WORKDIR}/${MY_P} pkg_pretend() { local CONFIG_CHECK="~NF_CONNTRACK ~NF_CONNTRACK_IPV6" local ERROR_CONNTRACK="${PN} requires NF_CONNTRACK support." local ERROR_CONNTRACK_IPV6="${PN} requires NF_CONNTRACK_IPV6 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}/shorewall6 (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 shorewall6-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 }