diff options
author | Thomas Deutschmann <whissi@gentoo.org> | 2016-12-20 15:18:22 +0100 |
---|---|---|
committer | Thomas Deutschmann <whissi@gentoo.org> | 2016-12-20 15:18:56 +0100 |
commit | a0ad7dc0cec9195f4cbbb1c5b3f3b0a4115a96ad (patch) | |
tree | 28b23b7ed9192390e1ccbf298ed10d1bea447a1a /net-firewall | |
parent | net-firewall/shorewall: Drop old. (diff) | |
download | gentoo-a0ad7dc0cec9195f4cbbb1c5b3f3b0a4115a96ad.tar.gz gentoo-a0ad7dc0cec9195f4cbbb1c5b3f3b0a4115a96ad.tar.bz2 gentoo-a0ad7dc0cec9195f4cbbb1c5b3f3b0a4115a96ad.zip |
net-firewall/shorewall: Bump to v5.0.15.1
Package-Manager: Portage-2.3.2, Repoman-2.3.1
Diffstat (limited to 'net-firewall')
-rw-r--r-- | net-firewall/shorewall/Manifest | 7 | ||||
-rw-r--r-- | net-firewall/shorewall/shorewall-5.0.15.1.ebuild | 452 |
2 files changed, 459 insertions, 0 deletions
diff --git a/net-firewall/shorewall/Manifest b/net-firewall/shorewall/Manifest index 807ee4ae6b29..2a1a64e396af 100644 --- a/net-firewall/shorewall/Manifest +++ b/net-firewall/shorewall/Manifest @@ -1,14 +1,21 @@ DIST shorewall-5.0.11.tar.bz2 504955 SHA256 b8a836d443c9d94c489dbd8e9672c0c42a4be0ca9a95e4762a64b615d96c8228 SHA512 6240e00fe9a381a35acc6c2307d73fd69a37345a653ee003d0c94a0fd6078e29afbb2237ad2be6ddf952d463e5af4f23cc24426aa7aaebfbb5ed4f3ee9aaa0b5 WHIRLPOOL e3e3b9b19e129f471d60e7a77dbf9bb49232137ad25a192d34fdcba1b44a8275caefffe23e6b2b76b76d685333848d331ea1ebaa4fc8900d651f7df728babe91 DIST shorewall-5.0.14.1.tar.bz2 523476 SHA256 cb4b303d42dd99c3ab28acaf99446aff5f9273b8393dc8e9b6123f3dd427afd1 SHA512 709f784aaf9a558024ca31fa4e2fef29aa012b3fd074dccd97854f02dad512e05c29b184ec0ea733d21c81f6a078d7b2c77671744e7fb5f21dc34198135cfd50 WHIRLPOOL 1a55fb6a1a490a0a28c2175119ebe41555390dd5e702a3e599591248d3dae316830eec5e9e213eacc5120f1102ab5bcdfa6b1259df33370a4af960234e00dd5d +DIST shorewall-5.0.15.1.tar.bz2 525204 SHA256 e430743712563935955f4b76949ea4e4688ca108292fb02ba67cb3f78c500364 SHA512 db36a85517c977c38ec6a96ad695945e570462503c94836f2046735609102092b286ae5a9329fead96778dd67d1f400c96ae042d69c3ee1670784a7a0350a96b WHIRLPOOL ba5e1b67c4893b4f59fa2b88953d1f172b412097cc42d5335b894bb245c1aeb5b4fb2d7bdb04fbda35214795cd5312d191ff50727352368553e363abf2a5ab33 DIST shorewall-core-5.0.11.tar.bz2 59845 SHA256 203122ee213bb31e464a25cf4e947800bea595914888cc496dafdd2e202b65ba SHA512 f210d2bbf3ff078a45d76334933d28d03a7a5ed27c1f7c599527f282c3215bcfda95359712e2bb2823e6416fd278cd099fd1fd188d1e21b1c2291802de28fa7b WHIRLPOOL 976660011903e9f688252be7fbc6ce648468156fe8c99c5b20b64fe9e385969f460ba764dce5fd26f99f1ddd527aabea57b896a6db12f8feed1f439a6c10b109 DIST shorewall-core-5.0.14.1.tar.bz2 63788 SHA256 a856a07ab61734db3c259962edefa3a891106430b5efc20a41d55b15431de9bd SHA512 de8d841a93d2b1d1d1a9024634c63a0c2e7ba9e02566afc2782aedeb2391cbca3ec11d2260a7a42b8e21f22d3f2400554a2cc59584ba0e19d4a5c40867690fc6 WHIRLPOOL 6fa03914a227f9f829d69ba30c919d56414311ee26c7283c4b83b869a4c41bee2b4394d7bf79735f5d4a10c175fb3e75ed71031cbc490ccb1c0982c86d2765c5 +DIST shorewall-core-5.0.15.1.tar.bz2 64407 SHA256 9b64f9260f7a9c56421da0f1cc40db4cc751f3d4b87c8f8c2168f5c3e961e4cb SHA512 dea47e41d5545500406bce7d5adf62834e713b8533c9f1bb3e0a932ba19fc43d01b429ee1dcbb53168de8d80a4c16be83935508c32aed8f39f74d4115c5393a4 WHIRLPOOL 40be1658a33bbfa9f9fd7aa6d7c7a5c703af7999d81dab7aaab705ef89834c61004f4fd38139d1607d3709a3fb25014ee3f3c33123d2de63b89e23ab2bf3ba98 DIST shorewall-docs-html-5.0.11.tar.bz2 4270762 SHA256 744d85f5549ecec66007d0e2079aca0b10e78dd10cba806ceedb237c9396dbe7 SHA512 46840e849d3c51c67168b08bd81f5ffb257cd26f0febf26d94fc126ef23da78f996614ea71acec9cceeb280a29bb1250f370a5807bdc5a12a86375f7d41bb1ff WHIRLPOOL 491963832ad539e555dd28c343e1c1362f5581d386221e3f0d66a6735f4d1286b0ac4a100eebafaa564382a55662f12ad43d2223a08f8247c3c40e03246b7d45 DIST shorewall-docs-html-5.0.14.1.tar.bz2 4290473 SHA256 3ac58a4a178be09bf63a95409c38f8ba560c20968330c39e19be496d173724a8 SHA512 5bc6fadebca8510845a135021a1aad7f2cbb69e64b2159ef46b752971fb76d4b541f63af5dc42546cb304431235e0de6bd4be6ebccf0a616c557d48cfc01c80d WHIRLPOOL a13690b613acd23cc1b7f0951ba7ae25b4235fef82e1a05fcb828d028665b5f002bcd60971ab4b9e908341d6b62ed5ebc8ce8dc157018777e360f04001071544 +DIST shorewall-docs-html-5.0.15.1.tar.bz2 4290901 SHA256 47b1e594f14b9f022671e5fb4b4def31513f1d250a2cd99e16713fdcd399bde6 SHA512 78d0541ac3ed705c4c6fb954601b7dc929c681601d17301af44f2b3535239b5c3bd64fe1586ef0ff435a05cc4b3672d393028b48809c9d550f6329bab33470b2 WHIRLPOOL 2580b3ff97067465b0c4d13475384d424df21e45cc083ebd800228644a24ac74a6de3e94bb3311305668a957f7ae5bc4e31803a8de8b52a14ef35922ace68947 DIST shorewall-init-5.0.11.tar.bz2 37931 SHA256 0ebb766872d86ac57055fff7be9c5f6044a0a062554dd936d4b9cdf7f6b0ef9d SHA512 e7c3446b753148ad446b354072b8b6421a691670584e99532bfba043352151f87136984691788344d5c4c2aaeb4c36f23e0d3423524cd55488723b2907e03cce WHIRLPOOL 5825fe40fc2f36feb4a78b9c232e784f7bfbed9ce0635c692d80294ac8eb675a5018a5c0570e0d7d431922aa0bfe9aa0da885565b49bf8df0fd26e4d58e2fd61 DIST shorewall-init-5.0.14.1.tar.bz2 41707 SHA256 3d535888f17c1b1e35830c8bb1692caddec9693327c1fed6d45e0f6b48045680 SHA512 901d8db51bdcee49fa557ebd962ed249b92588d1e0fad8ebd1d3f05fe2dfb835ead252300a8ac1ae67a436e004a8a583f356a636a622f9bd7429655ac48ad129 WHIRLPOOL 626e1c4d654188dd3dffb506f0e38a4e785c4ee1c7ac9c4db866e488758b5dc20d341a133b199d7880c16c04db346b4f582b30742ab633be2734fc2870cdf676 +DIST shorewall-init-5.0.15.1.tar.bz2 42337 SHA256 23638b2fb942b8b48bf158b557d9245803523236aa77e55c890c6cf958070556 SHA512 961beebbee3828b7ef72ecf0d95d160f20a8c6811623bd00a9c296fd24f0b73dca338904c4c10bbd72bd2c9deb5f6ebc02fc7c5505454b92e268cb8deb917164 WHIRLPOOL 4c0c2ba60858cff16ef23c161bf30f1a855a183f8e5254df603a3b0ea9d55aa67d3e7fe2e9a83c4ac013364209cfef5e53a92a66b0d6a6f7fbf064285eba5eec DIST shorewall-lite-5.0.11.tar.bz2 54188 SHA256 3ba77271a7203bdb1fd46bbe7adfefe0b78a5c6d4120aa567586c815c669b3c9 SHA512 d59da77e2ee69e9efdcbdd199159e5b749e03650dbe1e46d3df87c50ef739f2515b363d5aa313dfa8543d9255a46ce9dd8fecebb01e98666cea6b16dc185b52f WHIRLPOOL 8983fcdda937f6df29e91e6dc428c9eb5574a12dfaa4768b4816f18fb51cc1e0ba8aff2b6b8cb0a70f141d268a605aa3d9bdeb1d8e1707185fc382ff11c172e9 DIST shorewall-lite-5.0.14.1.tar.bz2 58098 SHA256 0feb7d71e62b28af5942f5ffd1f67857277efc31bbad8cd47ff3de082d19b8c4 SHA512 ffd4472e531a75055e04ef53bc9a5e1219ad5e7cfe3502bb1beef190ed64746c825c7cf6234149fe102947135cd987f8760dbc2ceb9c92b811dc8bf2f6369bc9 WHIRLPOOL c0401cb350c3ef40172c95db9d7fbd3388c10eb07e742317559b673dd3a03bcb2ce0207f1500b1efda2afb7a97ac063fe2075ecba9bc95aea051908aa5ed1225 +DIST shorewall-lite-5.0.15.1.tar.bz2 58722 SHA256 fa1d4d6d54397fb43e3f1d3422eaca1b793490bab6a6976c320ae4ad2804fe66 SHA512 bc19d5e35841e179e595513a810a76c1774f4c67f4029b83bb05af6775694d4c7229647b597951c4bb87c7481aeb8e4577c61f1a910429e8a84ea0f1312635ec WHIRLPOOL ddb014563a346abb5239b7fa53255eac80a87aaf522bba1be3b5cfa5dae3717f0a4596cef97b8848f9ba279893f0e24c71af0422529a2ca11c3ad462526ea5cf DIST shorewall6-5.0.11.tar.bz2 229065 SHA256 a52386b3fe384dbf57e62334fbd2df707ca801a7a420cd87cef1065187769059 SHA512 70a07d5f9b76f0cd0e032ccd158076f96eba871b0d0d832379449b98d91de4a9d4e461bb12bcd880d186d51b4dee79544eaa6e453fbe9f85606a59c8543dce1c WHIRLPOOL 870ebee755c9bfd12d2f29f5ff563245d4cd2a563ab6c5fc7a4febc0864af6712825a0375466a5cc2b23ebbdd1b1c653924699743d8a5010e388a7ed552a1ec3 DIST shorewall6-5.0.14.1.tar.bz2 239885 SHA256 cca8a1aa064882c6a921a46d16c2d124fb165dddbeaf43f68adc644a961af53d SHA512 341350cbdde4bafd38e53f91bccea905dd1d3f6fb19bf8561a0b3cd61352e8aa084da9944a77d54201313bc2a552a4a21ae09eda57cacedf82e7d511230f5de1 WHIRLPOOL cc8a5dcda1ffb32351d15fd7a1bb7aa25a664618893bbaff6a9bcad91c0c3a64bf5a70b829a3b0cbed0f513a19036b255fab673d48c14df785d03473eaf5ba79 +DIST shorewall6-5.0.15.1.tar.bz2 240733 SHA256 384909552423acfd3a6f804fca3be4d49e5ec20114ae69d0d2678155133a7d43 SHA512 8cf63f49ea7acfb5c74c456c8dda476e9eec6b1c6144a32331b7b71f376d8c40460372cf25ce4894ca1d5f276007c5004acfda2519aabd3b9f91c8c70d285dfe WHIRLPOOL 37910bf6264287fa54ab4b8ee9f921060c4716859cfaaecd7fe7e572bf12ae42d592f9d8f81d22508a5d1cf9fc96dfa520fc28800f21bed2d805923c1dd62f03 DIST shorewall6-lite-5.0.11.tar.bz2 53608 SHA256 3e31469b0d5bdb6fcceba1cf0004e6c36b7ce5814c68f42a66b5aafcbd727120 SHA512 fe46d2feb20d8c5d98a2c3f4ca5210313e40202c20cfa3f1f1e26c20a80f0a6412848ea98a909ac0994ff833423e22df2eb6e63c411b5cf3f5e4403e53c493cf WHIRLPOOL 71f860eb00c969fa2f56ba2f7fc5648e9646abb7e09b09009a8e6c8b2c98fd5dd0a3590649a87f8efbc215436435c52f1f84a2fbc00abed450b7e1a4d5d04fe4 DIST shorewall6-lite-5.0.14.1.tar.bz2 57544 SHA256 89c90b063dfc52b5d7b55e3abb02966f3abd43613be5006dfe692d2a8f4195b4 SHA512 95dbf1ffd84e90576d122c43531d78b0b501165cae7aaa9c60cec01521c2a1f39f69220b4dcd0731574250169af1a9bd5e6fb08a068bcd11ffa51be5cff95d25 WHIRLPOOL dcfbc49dcf46db152665a9b86d479c2b3505d5ebf91f5cdb1d862a00a86003ea6e290b1df5c16747f9fcb4b2ace7d2c7d47f68faa4a8e83f46f0c1eef643114f +DIST shorewall6-lite-5.0.15.1.tar.bz2 58141 SHA256 71ee147dd1190745b79bcbbd4f42b90deb704628fc15c8cdf7badbfd7dd49bd7 SHA512 a3da765cb45b82fb435fcd9d833371692b49f1c5f00d1c30a0b979c0186a0b8965633900590ae0370de7e93b710ed605d5293a6316d6a738c22f5432e37ecfbd WHIRLPOOL e0645316ab9257495ad616735eeb116b80386cfeb99fb53b566b4888b0a8c8403aacffb7ff86dc9380ed43b3954f83110fe91a3516958daa975cddc086f69741 diff --git a/net-firewall/shorewall/shorewall-5.0.15.1.ebuild b/net-firewall/shorewall/shorewall-5.0.15.1.ebuild new file mode 100644 index 000000000000..54d3b67f7c1f --- /dev/null +++ b/net-firewall/shorewall/shorewall-5.0.15.1.ebuild @@ -0,0 +1,452 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit linux-info prefix systemd versionator + +DESCRIPTION='A high-level tool for configuring Netfilter' +HOMEPAGE="http://www.shorewall.net/" +LICENSE="GPL-2" +SLOT="0" +IUSE="doc +init +ipv4 ipv6 lite4 lite6" + +MY_PV=${PV/_rc/-RC} +MY_PV=${MY_PV/_beta/-Beta} +MY_P=${PN}-${MY_PV} + +MY_MAJOR_RELEASE_NUMBER=$(get_version_component_range 1-2) +MY_MAJORMINOR_RELEASE_NUMBER=$(get_version_component_range 1-3) + +# shorewall +MY_PN_IPV4=Shorewall +MY_P_IPV4=${MY_PN_IPV4/#S/s}-${MY_PV} + +# shorewall6 +MY_PN_IPV6=Shorewall6 +MY_P_IPV6=${MY_PN_IPV6/#S/s}-${MY_PV} + +# shorewall-lite +MY_PN_LITE4=Shorewall-lite +MY_P_LITE4=${MY_PN_LITE4/#S/s}-${MY_PV} + +# shorewall6-lite +MY_PN_LITE6=Shorewall6-lite +MY_P_LITE6=${MY_PN_LITE6/#S/s}-${MY_PV} + +# shorewall-init +MY_PN_INIT=Shorewall-init +MY_P_INIT=${MY_PN_INIT/#S/s}-${MY_PV} + +# shorewall-core +MY_PN_CORE=Shorewall-core +MY_P_CORE=${MY_PN_CORE/#S/s}-${MY_PV} + +# shorewall-docs-html +MY_PN_DOCS=Shorewall-docs-html +MY_P_DOCS=${MY_PN_DOCS/#S/s}-${MY_PV} + +# Upstream URL schema: +# Beta: $MIRROR/pub/shorewall/development/4.6/shorewall-4.6.4-Beta2/shorewall-4.6.4-Beta2.tar.bz2 +# RC: $MIRROR/pub/shorewall/development/4.6/shorewall-4.6.4-RC1/shorewall-4.6.4-RC1.tar.bz2 +# Release: $MIRROR/pub/shorewall/4.6/shorewall-4.6.3/shorewall-4.6.3.3.tar.bz2 + +MY_URL_PREFIX= +MY_URL_SUFFIX= +if [[ ${MY_PV} = *-Beta* ]] || [[ ${MY_PV} = *-RC* ]]; then + MY_URL_PREFIX='development/' + + _tmp_last_index=$(($(get_last_version_component_index ${MY_PV})+1)) + _tmp_suffix=$(get_version_component_range ${_tmp_last_index} ${MY_PV}) + if [[ ${_tmp_suffix} = *Beta* ]] || [[ ${_tmp_suffix} = *RC* ]]; then + MY_URL_SUFFIX="-${_tmp_suffix}" + fi + + # Cleaning up temporary variables + unset _tmp_last_index + unset _tmp_suffix +else + KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +fi + +SRC_URI=" + http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-core-${MY_PV}.tar.bz2 + ipv4? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-${MY_PV}.tar.bz2 ) + ipv6? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall6-${MY_PV}.tar.bz2 ) + lite4? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-lite-${MY_PV}.tar.bz2 ) + lite6? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall6-lite-${MY_PV}.tar.bz2 ) + init? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-init-${MY_PV}.tar.bz2 ) + doc? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/${MY_P_DOCS}.tar.bz2 ) +" + +# - Shorewall6 requires Shorewall +# - Installing Shorewall-init or just the documentation doesn't make any sense, +# that's why we force the user to select at least one "real" Shorewall product +# +# See http://shorewall.net/download.htm#Which +REQUIRED_USE=" + ipv6? ( ipv4 ) + || ( ipv4 lite4 lite6 ) +" + +# No build dependencies! Just plain shell scripts... +DEPEND="" + +RDEPEND=" + >=net-firewall/iptables-1.4.20 + >=sys-apps/iproute2-3.8.0[-minimal] + >=sys-devel/bc-1.06.95 + ipv4? ( + >=dev-lang/perl-5.16 + virtual/perl-Digest-SHA + ) + ipv6? ( + >=dev-perl/Socket6-0.230.0 + >=net-firewall/iptables-1.4.20[ipv6] + >=sys-apps/iproute2-3.8.0[ipv6] + ) + lite6? ( + >=net-firewall/iptables-1.4.20[ipv6] + >=sys-apps/iproute2-3.8.0[ipv6] + ) + init? ( >=sys-apps/coreutils-8.20 ) + !net-firewall/shorewall-core + !net-firewall/shorewall6 + !net-firewall/shorewall-lite + !net-firewall/shorewall6-lite + !net-firewall/shorewall-init + !<sys-apps/systemd-214 +" + +S=${WORKDIR} + +pkg_pretend() { + local CONFIG_CHECK="~NF_CONNTRACK" + + local WARNING_CONNTRACK="Without NF_CONNTRACK support, you will be unable" + local WARNING_CONNTRACK+=" to run any shorewall-based firewall on the local system." + + if use ipv4 || use lite4; then + CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK_IPV4" + + local WARNING_CONNTRACK_IPV4="Without NF_CONNTRACK_IPV4 support, you will" + local WARNING_CONNTRACK_IPV4+=" be unable to run any shorewall-based IPv4 firewall on the local system." + fi + + if use ipv6 || use lite6; then + CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK_IPV6" + + local WARNING_CONNTRACK_IPV6="Without NF_CONNTRACK_IPV6 support, you will" + local WARNING_CONNTRACK_IPV6+=" be unable to run any shorewall-based IPv6 firewall on the local system." + fi + + check_extra_config +} + +pkg_setup() { + if [[ -n "${DIGEST}" ]]; then + einfo "Unsetting environment variable \"DIGEST\" to prevent conflicts with package's \"install.sh\" script ..." + unset DIGEST + fi +} + +src_prepare() { + # We are moving each unpacked source from MY_P_* to MY_PN_*. + # This allows us to use patches from upstream and keeps epatch_user working + + einfo "Preparing shorewallrc ..." + cp "${FILESDIR}"/shorewallrc "${S}"/shorewallrc.gentoo || die "Copying shorewallrc failed" + eprefixify "${S}"/shorewallrc.gentoo + + # shorewall-core + mv "${S}"/${MY_P_CORE} "${S}"/${MY_PN_CORE} || die "Failed to move '${S}/${MY_P_CORE}' to '${S}/${MY_PN_CORE}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_CORE} ..." + ln -s ../shorewallrc.gentoo ${MY_PN_CORE}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + eend 0 + + # shorewall + if use ipv4; then + mv "${S}"/${MY_P_IPV4} "${S}"/${MY_PN_IPV4} || die "Failed to move '${S}/${MY_P_IPV4}' to '${S}/${MY_PN_IPV4}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_IPV4}" + ln -s ../shorewallrc.gentoo ${MY_PN_IPV4}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall.confd-r1 "${S}"/${MY_PN_IPV4}/default.gentoo || die "Copying shorewall.confd-r1 failed" + cp "${FILESDIR}"/shorewall.initd-r2 "${S}"/${MY_PN_IPV4}/init.gentoo.sh || die "Copying shorewall.initd-r2 failed" + cp "${FILESDIR}"/shorewall.systemd "${S}"/${MY_PN_IPV4}/gentoo.service || die "Copying shorewall.systemd failed" + eend 0 + fi + + # shorewall6 + if use ipv6; then + mv "${S}"/${MY_P_IPV6} "${S}"/${MY_PN_IPV6} || die "Failed to move '${S}/${MY_P_IPV6}' to '${S}/${MY_PN_IPV6}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_IPV6}" + ln -s ../shorewallrc.gentoo ${MY_PN_IPV6}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall.confd-r1 "${S}"/${MY_PN_IPV6}/default.gentoo || die "Copying shorewall.confd-r1 failed" + cp "${FILESDIR}"/shorewall.initd-r2 "${S}"/${MY_PN_IPV6}/init.gentoo.sh || die "Copying shorewall.initd-r2 failed" + cp "${FILESDIR}"/shorewall6.systemd "${S}"/${MY_PN_IPV6}/gentoo.service || die "Copying shorewall6.systemd failed" + eend 0 + fi + + # shorewall-lite + if use lite4; then + mv "${S}"/${MY_P_LITE4} "${S}"/${MY_PN_LITE4} || die "Failed to move '${S}/${MY_P_LITE4}' to '${S}/${MY_PN_LITE4}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_LITE4}" + ln -s ../shorewallrc.gentoo ${MY_PN_LITE4}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-lite.confd-r1 "${S}"/${MY_PN_LITE4}/default.gentoo || die "Copying shorewall-lite.confd-r1 failed" + cp "${FILESDIR}"/shorewall-lite.initd-r2 "${S}"/${MY_PN_LITE4}/init.gentoo.sh || die "Copying shorewall-lite.initd-r2 failed" + cp "${FILESDIR}"/shorewall-lite.systemd "${S}"/${MY_PN_LITE4}/gentoo.service || die "Copying shorewall-lite.systemd failed" + eend 0 + fi + + # shorewall6-lite + if use lite6; then + mv "${S}"/${MY_P_LITE6} "${S}"/${MY_PN_LITE6} || die "Failed to move '${S}/${MY_P_LITE6}' to '${S}/${MY_PN_LITE6}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_LITE6}" + ln -s ../shorewallrc.gentoo ${MY_PN_LITE6}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-lite.confd-r1 "${S}"/${MY_PN_LITE6}/default.gentoo || die "Copying shorewall-lite.confd-r1 failed" + cp "${FILESDIR}"/shorewall-lite.initd-r2 "${S}"/${MY_PN_LITE6}/init.gentoo.sh || die "Copying shorewall-lite.initd-r2 failed" + cp "${FILESDIR}"/shorewall6-lite.systemd "${S}"/${MY_PN_LITE6}/gentoo.service || die "Copying shorewall6-lite.systemd failed" + eend 0 + fi + + # shorewall-init + if use init; then + mv "${S}"/${MY_P_INIT} "${S}"/${MY_PN_INIT} || die "Failed to move '${S}/${MY_P_INIT}' to '${S}/${MY_PN_INIT}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_INIT}" + ln -s ../shorewallrc.gentoo ${MY_PN_INIT}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-init.confd "${S}"/${MY_PN_INIT}/default.gentoo || die "Copying shorewall-init.confd failed" + cp "${FILESDIR}"/shorewall-init.initd "${S}"/${MY_PN_INIT}/init.gentoo.sh || die "Copying shorewall-init.initd failed" + cp "${FILESDIR}"/shorewall-init.systemd "${S}"/${MY_PN_INIT}/gentoo.service || die "Copying shorewall-init.systemd failed" + cp "${FILESDIR}"/shorewall-init.readme "${S}"/${MY_PN_INIT}/shorewall-init.README.Gentoo.txt || die "Copying shorewall-init.systemd failed" + eend 0 + + eprefixify "${S}"/${MY_PN_INIT}/init.gentoo.sh + + cd "${S}"/${MY_PN_INIT} || die + eapply -p2 "${FILESDIR}"/shorewall-init-01_remove-ipset-functionality.patch + cd "${S}" || die + fi + + # shorewall-docs-html + if use doc; then + mv "${S}"/${MY_P_DOCS} "${S}"/${MY_PN_DOCS} || die "Failed to move '${S}/${MY_P_DOCS}' to '${S}/${MY_PN_DOCS}'" + fi + + eapply_user +} + +src_configure() { + :; +} + +src_compile() { + :; +} + +src_install() { + # shorewall-core + einfo "Installing ${MY_P_CORE} ..." + DESTDIR="${D%/}" ${MY_PN_CORE}/install.sh shorewallrc.gentoo || die "${MY_PN_CORE}/install.sh failed" + dodoc "${S}"/${MY_PN_CORE}/changelog.txt "${S}"/${MY_PN_CORE}/releasenotes.txt + + # shorewall + if use ipv4; then + einfo "Installing ${MY_P_IPV4} ..." + keepdir /var/lib/shorewall + DESTDIR="${D%/}" ${MY_PN_IPV4}/install.sh shorewallrc.gentoo || die "${MY_PN_IPV4}/install.sh failed" + + if use doc; then + dodoc -r "${S}"/${MY_PN_IPV4}/Samples + fi + fi + + # shorewall6 + if use ipv6; then + einfo "Installing ${MY_P_IPV6} ..." + keepdir /var/lib/shorewall6 + DESTDIR="${D%/}" ${MY_PN_IPV6}/install.sh shorewallrc.gentoo || die "${MY_PN_IPV6}/install.sh failed" + + if use doc; then + dodoc -r "${S}"/${MY_PN_IPV6}/Samples6 + fi + fi + + # shorewall-lite + if use lite4; then + einfo "Installing ${MY_P_LITE4} ..." + keepdir /var/lib/shorewall-lite + DESTDIR="${D%/}" ${MY_PN_LITE4}/install.sh shorewallrc.gentoo || die "${MY_PN_LITE4}/install.sh failed" + fi + + # shorewall6-lite + if use lite6; then + einfo "Installing ${MY_P_LITE6} ..." + keepdir /var/lib/shorewall6-lite + DESTDIR="${D%/}" ${MY_PN_LITE6}/install.sh shorewallrc.gentoo || die "${MY_PN_LITE6}/install.sh failed" + fi + + # shorewall-init + if use init; then + einfo "Installing ${MY_P_INIT} ..." + DESTDIR="${D%/}" ${MY_PN_INIT}/install.sh shorewallrc.gentoo || die "${MY_PN_INIT}/install.sh failed" + dodoc "${S}"/${MY_PN_INIT}/shorewall-init.README.Gentoo.txt + + if [[ -f "${D}etc/logrotate.d/shorewall-init" ]]; then + # On Gentoo, shorewall-init will not create shorewall-ifupdown.log, + # so we don't need a logrotate configuration file for shorewall-init + einfo "Removing unused \"${D}etc/logrotate.d/shorewall-init\" ..." + rm -rf "${D}"etc/logrotate.d/shorewall-init || die "Removing \"${D}etc/logrotate.d/shorewall-init\" failed" + fi + + if [[ -d "${D}etc/NetworkManager" ]]; then + # On Gentoo, we don't support NetworkManager + # so we don't need this folder at all + einfo "Removing unused \"${D}etc/NetworkManager\" ..." + rm -rf "${D}"etc/NetworkManager || die "Removing \"${D}etc/NetworkManager\" failed" + fi + + if [[ -f "${D}usr/share/shorewall-init/ifupdown" ]]; then + # This script isn't supported on Gentoo + rm -rf "${D}"usr/share/shorewall-init/ifupdown || die "Removing \"${D}usr/share/shorewall-init/ifupdown\" failed" + fi + fi + + if use doc; then + einfo "Installing ${MY_P_DOCS} ..." + docinto html && dodoc -r "${S}"/${MY_PN_DOCS}/* + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + # This is a new installation + + # Show first steps for shorewall/shorewall6 + local _PRODUCTS="" + if use ipv4; then + _PRODUCTS="shorewall" + + if use ipv6; then + _PRODUCTS="${_PRODUCTS}/shorewall6" + fi + fi + + if [[ -n "${_PRODUCTS}" ]]; then + elog "Before you can use ${_PRODUCTS}, you need to edit its configuration in:" + elog "" + elog " /etc/shorewall/shorewall.conf" + + if use ipv6; then + elog " /etc/shorewall6/shorewall6.conf" + fi + + elog "" + elog "To activate your shorewall-based firewall on system start, please add ${_PRODUCTS} to your default runlevel:" + elog "" + elog " # rc-update add shorewall default" + + if use ipv6; then + elog " # rc-update add shorewall6 default" + fi + fi + + # Show first steps for shorewall-lite/shorewall6-lite + _PRODUCTS="" + if use lite4; then + _PRODUCTS="shorewall-lite" + fi + + if use lite6; then + if [[ -z "${_PRODUCTS}" ]]; then + _PRODUCTS="shorewall6-lite" + else + _PRODUCTS="${_PRODUCTS}/shorewall6-lite" + fi + fi + + if [[ -n "${_PRODUCTS}" ]]; then + if use ipv4; then + elog "" + fi + + elog "Before you can use ${_PRODUCTS}, you need to provide a configuration, which you can" + elog "create using ${CATEGORY}/shorewall (with \"ipv4\" and or \"ipv6\" USE flag)." + elog "" + elog "To read more about ${_PRODUCTS}, please visit" + elog " http://shorewall.net/CompiledPrograms.html" + elog "" + elog "To activate your shorewall-lite-based firewall on system start, please add ${PRODUCTS} to your default runlevel:" + elog "" + + if use lite4; then + elog " # rc-update add shorewall-lite default" + fi + + if use lite6; then + elog " # rc-update add shorewall6-lite default" + fi + fi + + if use init; then + elog "" + elog "To secure your system on boot, please add shorewall-init to your boot runlevel:" + elog "" + elog " # rc-update add shorewall-init boot" + elog "" + elog "and review \$PRODUCTS in" + elog "" + elog " /etc/conf.d/shorewall-init" + fi + + fi + + local v + for v in ${REPLACING_VERSIONS}; do + if ! version_is_at_least ${MY_MAJOR_RELEASE_NUMBER} ${v}; then + # This is an upgrade + + elog "You are upgrading from a previous major version. It is highly recommended that you read" + elog "" + elog " - /usr/share/doc/shorewall*/releasenotes.tx*" + elog " - http://shorewall.net/Shorewall-5.html#idp51151872" + + if use ipv4; then + elog "" + elog "You can auto-migrate your configuration using" + elog "" + elog " # shorewall update -A" + + if use ipv6; then + elog " # shorewall6 update -A" + fi + + elog "" + elog "But if you are not familiar with the \"shorewall[6] update\" command," + elog "please read the shorewall[6] man page first." + fi + + # Show this elog only once + break + fi + done + + if ! use init; then + elog "" + elog "Consider emerging ${CATEGORY}/${PN} with USE flag \"init\" to secure your system on boot" + elog "before your shorewall-based firewall is ready to start." + elog "" + elog "To read more about shorewall-init, please visit" + elog " http://www.shorewall.net/Shorewall-init.html" + fi + + if ! has_version "net-firewall/conntrack-tools"; then + elog "" + elog "Your Shorewall firewall can utilize \"conntrack\" from the \"net-firewall/conntrack-tools\"" + elog "package. if you want to use this feature, you need to install \"net-firewall/conntrack-tools\"!" + fi + + if ! has_version "dev-perl/Devel-NYTProf"; then + elog "" + elog "If you want to profile your Shorewall firewall you need to install \"dev-perl/Devel-NYTProf\"!" + fi +} |