diff options
author | Alexey Korepanov <kaikaikai@yandex.ru> | 2016-03-13 20:47:45 +0000 |
---|---|---|
committer | Anthony G. Basile <blueness@gentoo.org> | 2016-03-14 05:01:13 -0400 |
commit | 6bcc3054f2f5dcc1c7b09d3961f3b12b8009e2c0 (patch) | |
tree | 26af57f19894534af25cfd34f4f64dab47750729 | |
parent | games-engines/scummvm-tools: version bump (diff) | |
download | gentoo-6bcc3054f2f5dcc1c7b09d3961f3b12b8009e2c0.tar.gz gentoo-6bcc3054f2f5dcc1c7b09d3961f3b12b8009e2c0.tar.bz2 gentoo-6bcc3054f2f5dcc1c7b09d3961f3b12b8009e2c0.zip |
net-misc/i2pd: fix bug #564596
-rw-r--r-- | net-misc/i2pd/files/i2pd-2.5.0.confd | 9 | ||||
-rw-r--r-- | net-misc/i2pd/files/i2pd-2.5.0.initd | 26 | ||||
-rw-r--r-- | net-misc/i2pd/files/i2pd-2.5.0.logrotate | 11 | ||||
-rw-r--r-- | net-misc/i2pd/files/i2pd-2.5.0.service | 18 | ||||
-rw-r--r-- | net-misc/i2pd/i2pd-2.5.0-r1.ebuild | 80 |
5 files changed, 144 insertions, 0 deletions
diff --git a/net-misc/i2pd/files/i2pd-2.5.0.confd b/net-misc/i2pd/files/i2pd-2.5.0.confd new file mode 100644 index 000000000000..fee9bc4256b5 --- /dev/null +++ b/net-misc/i2pd/files/i2pd-2.5.0.confd @@ -0,0 +1,9 @@ +I2PD_USER="${I2PD_USER:-i2pd}" +I2PD_GROUP="${I2PD_GROUP:-i2pd}" +I2PD_LOG="/var/log/i2pd.log" +I2PD_PID="/var/run/i2pd.pid" +I2PD_CFGDIR="/etc/i2pd/" +# Options to i2pd +I2PDOPTIONS="--daemon --service --pidfile ${I2PD_PID} \ +--log=file --logfile=${I2PD_LOG} \ +--conf=${I2PD_CFGDIR}i2pd.conf --tunconf=${I2PD_CFGDIR}tunnels.cfg" diff --git a/net-misc/i2pd/files/i2pd-2.5.0.initd b/net-misc/i2pd/files/i2pd-2.5.0.initd new file mode 100644 index 000000000000..6c1d4b7280f7 --- /dev/null +++ b/net-misc/i2pd/files/i2pd-2.5.0.initd @@ -0,0 +1,26 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +description="C++ daemon for accessing the I2P network" + +depend() { + use dns logger netmount +} + +start() { + ebegin "Starting ${SVCNAME}" + checkpath -f "${I2PD_LOG}" -o "${I2PD_USER}:${I2PD_GROUP}" + checkpath -f "${I2PD_PID}" -o "${I2PD_USER}:${I2PD_GROUP}" + start-stop-daemon -S -b -u "${I2PD_USER}:${I2PD_GROUP}" /usr/bin/i2pd -- ${I2PDOPTIONS} + sleep 1 + [ -e "$I2PD_PID" -a -e /proc/$(cat "$I2PD_PID") ] + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + start-stop-daemon -K -p "${I2PD_PID}" -R SIGTERM/20 SIGKILL/20 -P + eend $? +} diff --git a/net-misc/i2pd/files/i2pd-2.5.0.logrotate b/net-misc/i2pd/files/i2pd-2.5.0.logrotate new file mode 100644 index 000000000000..41e55e6a7427 --- /dev/null +++ b/net-misc/i2pd/files/i2pd-2.5.0.logrotate @@ -0,0 +1,11 @@ +/var/log/i2pd.log { + rotate 4 + weekly + missingok + notifempty + create 640 i2pd i2pd + postrotate + /bin/kill -HUP $(cat /var/run/i2pd.pid) + endscript +} + diff --git a/net-misc/i2pd/files/i2pd-2.5.0.service b/net-misc/i2pd/files/i2pd-2.5.0.service new file mode 100644 index 000000000000..3a3076e5d1f9 --- /dev/null +++ b/net-misc/i2pd/files/i2pd-2.5.0.service @@ -0,0 +1,18 @@ +[Unit] +Description=C++ daemon for accessing the I2P network +After=network.target + +[Service] +Type=forking +Restart=on-abnormal +PIDFile=/var/run/i2pd.pid +User=i2pd +Group=i2pd +PermissionsStartOnly=yes +ExecStartPre=/bin/touch /var/run/i2pd.pid /var/log/i2pd.log +ExecStartPre=/bin/chown i2pd:i2pd /run/i2pd.pid /var/log/i2pd.log +ExecStart=/usr/bin/i2pd --daemon --service --pidfile /var/run/i2pd.pid --log=file --logfile=/var/log/i2pd.log --conf=/etc/i2pd/i2pd.conf --tunconf=/etc/i2pd/tunnels.cfg + +[Install] +WantedBy=multi-user.target + diff --git a/net-misc/i2pd/i2pd-2.5.0-r1.ebuild b/net-misc/i2pd/i2pd-2.5.0-r1.ebuild new file mode 100644 index 000000000000..bf77fc15cc6b --- /dev/null +++ b/net-misc/i2pd/i2pd-2.5.0-r1.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils systemd user cmake-utils + +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="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="cpu_flags_x86_aes i2p-hardening libressl pch static +upnp" + +RDEPEND="!static? ( >=dev-libs/boost-1.46[threads] + dev-libs/crypto++ + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + upnp? ( net-libs/miniupnpc ) + )" +DEPEND="${RDEPEND} + static? ( >=dev-libs/boost-1.46[static-libs,threads] + dev-libs/crypto++[static-libs] + !libressl? ( dev-libs/openssl:0[static-libs] ) + libressl? ( dev-libs/libressl[static-libs] ) + upnp? ( net-libs/miniupnpc[static-libs] ) ) + i2p-hardening? ( >=sys-devel/gcc-4.7 ) + || ( >=sys-devel/gcc-4.7 >=sys-devel/clang-3.3 )" + +I2PD_USER="${I2PD_USER:-i2pd}" +I2PD_GROUP="${I2PD_GROUP:-i2pd}" + +CMAKE_USE_DIR="${S}/build" + +src_prepare() { + epatch "${FILESDIR}/i2pd-2.4.0-fix_installed_components.patch" +} + +src_configure() { + mycmakeargs=( + -DWITH_AESNI=$(usex cpu_flags_x86_aes ON OFF) + -DWITH_HARDENING=$(usex i2p-hardening ON OFF) + -DWITH_PCH=$(usex pch ON OFF) + -DWITH_STATIC=$(usex static ON OFF) + -DWITH_UPNP=$(usex upnp ON OFF) + -DWITH_LIBRARY=ON + -DWITH_BINARY=ON + ) + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + dodoc README.md + doman "${FILESDIR}/${PN}.1" + keepdir /var/lib/i2pd/ + insinto "/var/lib/i2pd" + doins -r "${S}/contrib/certificates" + fowners "${I2PD_USER}:${I2PD_GROUP}" /var/lib/i2pd/ + fperms 700 /var/lib/i2pd/ + dodir "/etc/${PN}" + insinto "/etc/${PN}" + doins "${FILESDIR}/${PN}.conf" + doins "${FILESDIR}/tunnels.cfg" + fowners "${I2PD_USER}:${I2PD_GROUP}" "/etc/${PN}/${PN}.conf" + fperms 600 "/etc/${PN}/${PN}.conf" + dodir /usr/share/i2pd + newconfd "${FILESDIR}/${PN}-2.5.0.confd" "${PN}" + newinitd "${FILESDIR}/${PN}-2.5.0.initd" "${PN}" + systemd_newunit "${FILESDIR}/${PN}-2.5.0.service" "${PN}.service" + doenvd "${FILESDIR}/99${PN}" + insinto /etc/logrotate.d + newins "${FILESDIR}/${PN}.logrotate" "${PN}" +} + +pkg_setup() { + enewgroup "${I2PD_GROUP}" + enewuser "${I2PD_USER}" -1 -1 "/var/lib/run/${PN}" "${I2PD_GROUP}" +} |