summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJamie Getty <jamiegetty1@gmail.com>2022-01-04 19:59:50 +1300
committerJason Zaman <perfinion@gentoo.org>2022-02-26 12:01:36 -0800
commit17ba1a9e252fd2fc081ba4a0cd1d3c1aae726a5f (patch)
tree62c668a1299f08850f30d76c09744274d9b56675 /net-p2p
parentsys-apps/flatpak: Bump to version 1.12.6 (diff)
downloadgentoo-17ba1a9e252fd2fc081ba4a0cd1d3c1aae726a5f.tar.gz
gentoo-17ba1a9e252fd2fc081ba4a0cd1d3c1aae726a5f.tar.bz2
gentoo-17ba1a9e252fd2fc081ba4a0cd1d3c1aae726a5f.zip
net-p2p/rtorrent: Remove dependency on screen for daemonising.
Also update to EAPI8. econf now automatically passes --with-sysroot= which sets the macos-only -syslibroot so needs to be --sysroot on linux. Closes: https://github.com/gentoo/gentoo/pull/23645 Signed-off-by: Jamie Getty <jamiegetty1@gmail.com> Signed-off-by: Jason Zaman <perfinion@gentoo.org>
Diffstat (limited to 'net-p2p')
-rw-r--r--net-p2p/rtorrent/files/rtorrent-r1.init16
-rw-r--r--net-p2p/rtorrent/files/rtorrentd_at-r1.service17
-rw-r--r--net-p2p/rtorrent/rtorrent-0.9.8-r1.ebuild70
3 files changed, 103 insertions, 0 deletions
diff --git a/net-p2p/rtorrent/files/rtorrent-r1.init b/net-p2p/rtorrent/files/rtorrent-r1.init
new file mode 100644
index 000000000000..e16f262bfbe3
--- /dev/null
+++ b/net-p2p/rtorrent/files/rtorrent-r1.init
@@ -0,0 +1,16 @@
+#!/sbin/openrc-run
+# Distributed under the terms of the GNU General Public License v2
+
+description="rTorrent BitTorrent client"
+
+command="/usr/bin/rtorrent"
+command_args="-o system.daemon.set=true"
+command_background=true
+command_user="${USER}"
+pidfile="/run/rtorrent.pid"
+
+depend()
+{
+ use net ypbind nis
+ after slapd mysqld postgresql
+}
diff --git a/net-p2p/rtorrent/files/rtorrentd_at-r1.service b/net-p2p/rtorrent/files/rtorrentd_at-r1.service
new file mode 100644
index 000000000000..bc9220353786
--- /dev/null
+++ b/net-p2p/rtorrent/files/rtorrentd_at-r1.service
@@ -0,0 +1,17 @@
+# This configuration file is taken from the Arch wiki.
+# https://wiki.archlinux.org/title/RTorrent#Systemd_service_as_a_daemon_for_a_user
+
+[Unit]
+Description=rTorrent for %i
+After=network.target
+
+[Service]
+Type=simple
+User=%i
+Group=%i
+WorkingDirectory=/home/%i
+# Modify the next line to the absolute path for rtorrent.lock, for example
+ExecStartPre=-/bin/rm -f /home/%i/.session/rtorrent.lock
+ExecStart=/usr/bin/rtorrent -o system.daemon.set=true
+Restart=on-failure
+RestartSec=3
diff --git a/net-p2p/rtorrent/rtorrent-0.9.8-r1.ebuild b/net-p2p/rtorrent/rtorrent-0.9.8-r1.ebuild
new file mode 100644
index 000000000000..d0955a6839c0
--- /dev/null
+++ b/net-p2p/rtorrent/rtorrent-0.9.8-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools linux-info systemd
+
+DESCRIPTION="BitTorrent Client using libtorrent"
+HOMEPAGE="https://rakshasa.github.io/rtorrent/"
+SRC_URI="http://rtorrent.net/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris"
+IUSE="debug selinux test xmlrpc"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="~net-libs/libtorrent-0.13.${PV##*.}
+ >=net-misc/curl-7.19.1
+ sys-libs/ncurses:0=
+ xmlrpc? ( dev-libs/xmlrpc-c:= )"
+RDEPEND="${COMMON_DEPEND}
+ selinux? ( sec-policy/selinux-rtorrent )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-util/cppunit
+ virtual/pkgconfig"
+
+DOCS=( doc/rtorrent.rc )
+
+pkg_setup() {
+ if ! linux_config_exists || ! linux_chkconfig_present IPV6; then
+ ewarn "rtorrent will not start without IPv6 support in your kernel"
+ ewarn "without further configuration. Please set bind=0.0.0.0 or"
+ ewarn "similar in your rtorrent.rc"
+ ewarn "Upstream bug: https://github.com/rakshasa/rtorrent/issues/732"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # https://github.com/rakshasa/rtorrent/issues/332
+ cp "${FILESDIR}"/rtorrent.1 "${S}"/doc/ || die
+
+ if [[ ${CHOST} != *-darwin* ]]; then
+ # syslibroot is only for macos, change to sysroot for others
+ sed -i 's/Wl,-syslibroot,/Wl,--sysroot,/' "${S}/scripts/common.m4" || die
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ default
+
+ # configure needs bash or script bombs out on some null shift, bug #291229
+ CONFIG_SHELL=${BASH} econf \
+ $(use_enable debug) \
+ $(use_with xmlrpc xmlrpc-c)
+}
+
+src_install() {
+ default
+ doman doc/rtorrent.1
+
+ newinitd "${FILESDIR}/rtorrent-r1.init" rtorrent
+ newconfd "${FILESDIR}/rtorrentd.conf" rtorrent
+ systemd_newunit "${FILESDIR}/rtorrentd_at-r1.service" "rtorrentd@.service"
+}