net-p2p/transmission: Bump to 2.90
authorMike Gilbert <floppym@gentoo.org>
Fri, 4 Mar 2016 02:41:17 +0000 (21:41 -0500)
committerMike Gilbert <floppym@gentoo.org>
Fri, 4 Mar 2016 02:41:30 +0000 (21:41 -0500)
Also modernize the init script.

Package-Manager: portage-2.2.27_p64

net-p2p/transmission/Manifest
net-p2p/transmission/files/transmission-daemon.initd.10 [new file with mode: 0644]
net-p2p/transmission/transmission-2.90.ebuild [new file with mode: 0644]

index 7de950de60ce71a90252deba40b16b39a7477749..13521d01188a2f36662e2b973210b3a03c588f73 100644 (file)
@@ -1 +1,2 @@
 DIST transmission-2.84.tar.xz 3077836 SHA256 a9fc1936b4ee414acc732ada04e84339d6755cd0d097bcbd11ba2cfc540db9eb SHA512 d6c2b17e7f8180a41ac70f5b503dfdb0353c6419db25df1b393b18c987c56fda9e2fd4c3f4cda7f08c301877bd0b4711842c28121ceaaaae87f5792cc6c29a3d WHIRLPOOL 375f9c981d9d2ac308896e8b7d66d3643796c8e97d64a1e0d6fd2bffaafa55988b90ddb4eb98330edf062e835c0c5ce76749e7e66bf6806333673beb7569f342
+DIST transmission-2.90.tar.xz 3377720 SHA256 69ff8caf81684155926f437f46bf7df1b1fb304f52c7809f546257e8923f2fd2 SHA512 09c8e90cb1c7b508e3956d294ba9b5f01b4093c9f934c76d7515e96915c657b97f02819e1365dbbfecbdf489ae5757346d8bb2dd8e0070c304af434006495fda WHIRLPOOL a51a86603ddf208c73b6e86a05eda2d90636407c7c716fb959fa460a72908aafe2d82f46c1fe3d7afda52ba845d73924d0f26f107a2446644809f7cfd5985275
diff --git a/net-p2p/transmission/files/transmission-daemon.initd.10 b/net-p2p/transmission/files/transmission-daemon.initd.10
new file mode 100644 (file)
index 0000000..7acb222
--- /dev/null
@@ -0,0 +1,43 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+command="/usr/bin/transmission-daemon"
+extra_started_commands="reload"
+description="Transmission is a fast, easy and free bittorrent client"
+description_start="Start transmission-daemon server and web interface"
+description_stop="Stop transmission-daemon server and web interface"
+description_reload="Reload transmission-daemon settings"
+
+rundir=${rundir:-/var/run/transmission}
+pidfile=${pidfile:-${rundir}/transmission.pid}
+config_dir=${config_dir:-/var/lib/transmission/config}
+download_dir=${download_dir:-/var/lib/transmission/downloads}
+logfile=${logfile:-/var/log/transmission/transmission.log}
+runas_user=${runas_user:-transmission:transmission}
+
+retry="TERM/45/QUIT/15"
+
+start_pre() {
+       command_args="
+               --config-dir ${config_dir}
+               --download-dir ${download_dir}
+               --pid-file ${pidfile}
+               ${TRANSMISSION_OPTIONS}
+       "
+       command_user="${runas_user}"
+
+       checkpath -d -o ${runas_user} "${rundir}" /var/lib/transmission "${config_dir}" "${download_dir}" || return
+
+       if [ "${logfile}" != syslog ]; then
+               checkpath -d -o ${runas_user} /var/log/transmission || return
+               command_args="${command_args} --logfile ${logfile}"
+       fi
+}
+
+reload() {
+       ebegin "Reloading ${RC_SVCNAME}"
+       start-stop-daemon --signal HUP --exec "${command}" --pidfile "${pidfile}"
+       eend $?
+}
diff --git a/net-p2p/transmission/transmission-2.90.ebuild b/net-p2p/transmission/transmission-2.90.ebuild
new file mode 100644 (file)
index 0000000..96c12ef
--- /dev/null
@@ -0,0 +1,158 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit autotools fdo-mime gnome2-utils qmake-utils systemd user
+
+DESCRIPTION="A Fast, Easy and Free BitTorrent client"
+HOMEPAGE="http://www.transmissionbt.com/"
+SRC_URI="http://download.transmissionbt.com/${PN}/files/${P}.tar.xz"
+
+# web/LICENSE is always GPL-2 whereas COPYING allows either GPL-2 or GPL-3 for the rest
+# transmission in licenses/ is for mentioning OpenSSL linking exception
+# MIT is in several libtransmission/ headers
+LICENSE="|| ( GPL-2 GPL-3 Transmission-OpenSSL-exception ) GPL-2 MIT"
+SLOT=0
+IUSE="ayatana gtk libressl lightweight systemd qt4 qt5 xfs"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux"
+
+RDEPEND=">=dev-libs/libevent-2.0.10:=
+       !libressl? ( dev-libs/openssl:0= )
+       libressl? ( dev-libs/libressl )
+       net-libs/libnatpmp:=
+       >=net-libs/miniupnpc-1.7:=
+       >=net-misc/curl-7.16.3:=[ssl]
+       sys-libs/zlib:=
+       gtk? (
+               >=dev-libs/dbus-glib-0.100:=
+               >=dev-libs/glib-2.32:2=
+               >=x11-libs/gtk+-3.4:3=
+               ayatana? ( >=dev-libs/libappindicator-0.4.90:3= )
+               )
+       systemd? ( sys-apps/systemd:= )
+       qt4? (
+               dev-qt/qtcore:4
+               dev-qt/qtgui:4
+               dev-qt/qtdbus:4
+               )
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtdbus:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtwidgets:5
+               )"
+DEPEND="${RDEPEND}
+       >=dev-libs/glib-2.32
+       dev-util/intltool
+       sys-devel/gettext
+       virtual/os-headers
+       virtual/pkgconfig
+       qt5? ( dev-qt/linguist-tools:5 )
+       xfs? ( sys-fs/xfsprogs )"
+
+REQUIRED_USE="ayatana? ( gtk ) ?? ( qt4 qt5 )"
+
+DOCS="AUTHORS NEWS qt/README.txt"
+
+src_prepare() {
+       sed -i -e '/CFLAGS/s:-ggdb3::' configure.ac || die
+
+       # Trick to avoid automagic dependency
+       use ayatana || { sed -i -e '/^LIBAPPINDICATOR_MINIMUM/s:=.*:=9999:' configure.ac || die; }
+
+       # Pass our configuration dir to systemd unit file
+       sed -i '/ExecStart/ s|$| -g /var/lib/transmission/config|' daemon/transmission-daemon.service || die
+
+       # http://trac.transmissionbt.com/ticket/4324
+       sed -i -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' libtransmission/Makefile.am || die
+
+       eapply_user
+       eautoreconf
+}
+
+src_configure() {
+       export ac_cv_header_xfs_xfs_h=$(usex xfs)
+
+       econf \
+               --enable-external-natpmp \
+               $(use_enable lightweight) \
+               $(use_with systemd systemd-daemon) \
+               $(use_with gtk)
+
+       if use qt4 || use qt5; then
+               pushd qt >/dev/null || die
+               use qt4 && eqmake4 qtr.pro
+               use qt5 && eqmake5 qtr.pro
+               popd >/dev/null || die
+       fi
+}
+
+src_compile() {
+       emake
+
+       if use qt4 || use qt5; then
+               local qt_bindir
+               use qt4 && qt_bindir=$(qt4_get_bindir)
+               use qt5 && qt_bindir=$(qt5_get_bindir)
+               emake -C qt
+               "${qt_bindir}"/lrelease qt/translations/*.ts || die
+       fi
+}
+
+src_install() {
+       default
+
+       rm "${ED}"/usr/share/transmission/web/LICENSE || die
+
+       newinitd "${FILESDIR}"/transmission-daemon.initd.10 transmission-daemon
+       newconfd "${FILESDIR}"/transmission-daemon.confd.4 transmission-daemon
+       systemd_dounit daemon/transmission-daemon.service
+
+       if use qt4 || use qt5; then
+               pushd qt >/dev/null || die
+               emake INSTALL_ROOT="${ED}"/usr install
+
+               domenu transmission-qt.desktop
+
+               local res
+               for res in 16 22 24 32 48 64 72 96 128 192 256; do
+                       doicon -s ${res} icons/hicolor/${res}x${res}/transmission-qt.png
+               done
+               doicon -s scalable icons/hicolor/scalable/transmission-qt.svg
+
+               use qt4 && insinto /usr/share/qt4/translations
+               use qt5 && insinto /usr/share/qt5/translations
+               doins translations/*.qm
+               popd >/dev/null || die
+       fi
+}
+
+pkg_preinst() {
+       gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       fdo-mime_desktop_database_update
+       gnome2_icon_cache_update
+
+       enewgroup transmission
+       enewuser transmission -1 -1 -1 transmission
+
+       elog "If you use transmission-daemon, please, set 'rpc-username' and"
+       elog "'rpc-password' (in plain text, transmission-daemon will hash it on"
+       elog "start) in settings.json file located at /var/lib/transmission/config or"
+       elog "any other appropriate config directory."
+       elog
+       elog "Since µTP is enabled by default, transmission needs large kernel buffers for"
+       elog "the UDP socket. You can append following lines into /etc/sysctl.conf:"
+       elog " net.core.rmem_max = 4194304"
+       elog " net.core.wmem_max = 1048576"
+       elog "and run sysctl -p"
+}
+
+pkg_postrm() {
+       fdo-mime_desktop_database_update
+       gnome2_icon_cache_update
+}