net-vpn/i2pd: version bump to 2.23.0
authorAnthony G. Basile <blueness@gentoo.org>
Thu, 31 Jan 2019 00:05:01 +0000 (19:05 -0500)
committerAnthony G. Basile <blueness@gentoo.org>
Thu, 31 Jan 2019 00:05:15 +0000 (19:05 -0500)
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

net-vpn/i2pd/Manifest
net-vpn/i2pd/i2pd-2.23.0.ebuild [new file with mode: 0644]

index 49e864574a2de240a77af40a1b7dd15447b855bf..a62f6f7118e8eae983f402ab9f57b35fb903a113 100644 (file)
@@ -3,3 +3,4 @@ DIST i2pd-2.20.0.tar.gz 1991174 BLAKE2B 37b85dc37299cd6d2f64050eb096ecc11d75ccdc
 DIST i2pd-2.21.0.tar.gz 1993520 BLAKE2B 616f4938d547e6a5d27292bec1741fa28131c37ad12b0f7c564e24ff0fd3b0a01974989ac6f337cd58cc1a618980fd171692c0164d22c3e97080540318e5df89 SHA512 a9c2f4bb1ec6459e7f8f48b74a48dd192af0962876fc6dcf998febe342918f98a21ae421cf48402d5e0c4570641eb3112d85522230dad34cabe6c4f367d6d8ab
 DIST i2pd-2.21.1.tar.gz 1993853 BLAKE2B 8686acf12464f892cb116ba6c14b67fc56af45315feec25b4c165c7b38238f48b7e1ca227f8b2b53dabcb4d9f46555e1528f4f11e675fbfc63aa3fad062280b6 SHA512 e73c0c1f624b468a4a30996de77b27f5a2166d16b57724ec58647e5630f9e988052b11962fa47f318403ccd4c675a8d7c8b0ddcaa79666cea9743a6437fc4fd2
 DIST i2pd-2.22.0.tar.gz 2263033 BLAKE2B b8b7fa0a1fc4e333824eed8c6bd5fbfe40b83b7a0dbf5db8001144ca1b672c6e33996ad5218ef53cca15e56738fd8447f1c10a90c109d86a2364ef7646cc1377 SHA512 da8187a5d68bf09962419da91eeeb12534eaa2b519139784afb5faf6f1c40e7b344181f987461614d0f7b6563d0a872c8180ecc8a122ed08688130de3d13b0e8
+DIST i2pd-2.23.0.tar.gz 1008677 BLAKE2B c216785d8642e1c8d7cdbcddd23e6dd0b8a1fe8d732ef8b8d19e3c7c55ad91285dfa85bcfab0934a0acc4c180750ff8e3f5730f948dafff7c283ed084afa3374 SHA512 b547fa5b4ab3fbdf51cded846966b702304cc3dcbafbf3b4fc0e93e1907e45a649dd19eabc851309dfb7d3aa8ef84eefcb2cf1a3cda8549f90200da54df06923
diff --git a/net-vpn/i2pd/i2pd-2.23.0.ebuild b/net-vpn/i2pd/i2pd-2.23.0.ebuild
new file mode 100644 (file)
index 0000000..963416b
--- /dev/null
@@ -0,0 +1,120 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit systemd user cmake-utils eapi7-ver toolchain-funcs
+
+DESCRIPTION="A C++ daemon for accessing the I2P anonymous network"
+HOMEPAGE="https://github.com/PurpleI2P/i2pd"
+SRC_URI="https://github.com/PurpleI2P/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="cpu_flags_x86_aes cpu_flags_x86_avx i2p-hardening libressl static +upnp websocket"
+
+# if using libressl, require >=boost-1.65, see #597798
+RDEPEND="
+       !static? (
+               dev-libs/boost[threads]
+               !libressl? ( dev-libs/openssl:0[-bindist] )
+               libressl? (
+                       dev-libs/libressl:0
+                       >=dev-libs/boost-1.65
+               )
+               upnp? ( net-libs/miniupnpc )
+       )"
+DEPEND="${RDEPEND}
+       static? (
+               dev-libs/boost[static-libs,threads]
+               !libressl? ( dev-libs/openssl:0[static-libs] )
+               libressl? (
+                       dev-libs/libressl:0[static-libs]
+                       >=dev-libs/boost-1.65
+               )
+               sys-libs/zlib[static-libs]
+               upnp? ( net-libs/miniupnpc[static-libs] )
+       )
+       websocket? ( dev-cpp/websocketpp )"
+
+I2PD_USER=i2pd
+I2PD_GROUP=i2pd
+
+CMAKE_USE_DIR="${S}/build"
+
+DOCS=( README.md contrib/i2pd.conf contrib/tunnels.conf )
+
+PATCHES=( "${FILESDIR}/${PN}-2.14.0-fix_installed_components.patch" )
+
+pkg_pretend() {
+       if tc-is-gcc && ! ver_test "$(gcc-version)" -ge "4.7"; then
+               die "At least gcc 4.7 is required"
+       fi
+       if use i2p-hardening && ! tc-is-gcc; then
+               die "i2p-hardening requires gcc"
+       fi
+}
+
+src_configure() {
+       mycmakeargs=(
+               -DWITH_AESNI=$(usex cpu_flags_x86_aes ON OFF)
+               -DWITH_AVX=$(usex cpu_flags_x86_avx ON OFF)
+               -DWITH_HARDENING=$(usex i2p-hardening ON OFF)
+               -DWITH_PCH=OFF
+               -DWITH_STATIC=$(usex static ON OFF)
+               -DWITH_UPNP=$(usex upnp ON OFF)
+               -DWITH_WEBSOCKETS=$(usex websocket ON OFF)
+               -DWITH_LIBRARY=ON
+               -DWITH_BINARY=ON
+       )
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       # config
+       insinto /etc/i2pd
+       doins contrib/i2pd.conf
+       doins contrib/tunnels.conf
+
+       # grant i2pd group read and write access to config files
+       fowners "root:${I2PD_GROUP}" \
+               /etc/i2pd/i2pd.conf \
+               /etc/i2pd/tunnels.conf
+       fperms 660 \
+               /etc/i2pd/i2pd.conf \
+               /etc/i2pd/tunnels.conf
+
+       # working directory
+       keepdir /var/lib/i2pd
+       insinto /var/lib/i2pd
+       doins -r contrib/certificates
+       fowners "${I2PD_USER}:${I2PD_GROUP}" /var/lib/i2pd/
+       fperms 700 /var/lib/i2pd/
+
+       # add /var/lib/i2pd/certificates to CONFIG_PROTECT
+       doenvd "${FILESDIR}/99i2pd"
+
+       # openrc and systemd daemon routines
+       newconfd "${FILESDIR}/i2pd-2.6.0-r3.confd" i2pd
+       newinitd "${FILESDIR}/i2pd-2.6.0-r3.initd" i2pd
+       systemd_newunit "${FILESDIR}/i2pd-2.6.0-r3.service" i2pd.service
+
+       # logrotate
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}/i2pd-2.6.0-r3.logrotate" i2pd
+}
+
+pkg_setup() {
+       enewgroup "${I2PD_GROUP}"
+       enewuser "${I2PD_USER}" -1 -1 /var/lib/run/i2pd "${I2PD_GROUP}"
+}
+
+pkg_postinst() {
+       if [[ -f ${EROOT%/}/etc/i2pd/subscriptions.txt ]]; then
+               ewarn
+               ewarn "Configuration of the subscriptions has been moved from"
+               ewarn "subscriptions.txt to i2pd.conf. We recommend updating"
+               ewarn "i2pd.conf accordingly and deleting subscriptions.txt."
+       fi
+}