summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-p2p/transmission
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-p2p/transmission')
-rw-r--r--net-p2p/transmission/Manifest1
-rw-r--r--net-p2p/transmission/files/transmission-2.80-translations-path-fix.patch17
-rw-r--r--net-p2p/transmission/files/transmission-daemon.confd.414
-rw-r--r--net-p2p/transmission/files/transmission-daemon.initd.973
-rw-r--r--net-p2p/transmission/metadata.xml13
-rw-r--r--net-p2p/transmission/transmission-2.84-r1.ebuild161
-rw-r--r--net-p2p/transmission/transmission-2.84.ebuild152
7 files changed, 431 insertions, 0 deletions
diff --git a/net-p2p/transmission/Manifest b/net-p2p/transmission/Manifest
new file mode 100644
index 000000000000..7de950de60ce
--- /dev/null
+++ b/net-p2p/transmission/Manifest
@@ -0,0 +1 @@
+DIST transmission-2.84.tar.xz 3077836 SHA256 a9fc1936b4ee414acc732ada04e84339d6755cd0d097bcbd11ba2cfc540db9eb SHA512 d6c2b17e7f8180a41ac70f5b503dfdb0353c6419db25df1b393b18c987c56fda9e2fd4c3f4cda7f08c301877bd0b4711842c28121ceaaaae87f5792cc6c29a3d WHIRLPOOL 375f9c981d9d2ac308896e8b7d66d3643796c8e97d64a1e0d6fd2bffaafa55988b90ddb4eb98330edf062e835c0c5ce76749e7e66bf6806333673beb7569f342
diff --git a/net-p2p/transmission/files/transmission-2.80-translations-path-fix.patch b/net-p2p/transmission/files/transmission-2.80-translations-path-fix.patch
new file mode 100644
index 000000000000..48638010f96f
--- /dev/null
+++ b/net-p2p/transmission/files/transmission-2.80-translations-path-fix.patch
@@ -0,0 +1,17 @@
+This patch was adapted from -2.77-transmations-path-fix.patch for 2.80
+
+Fix path for finding locale-specific files:
+QCoreApplication::applicationDirPath() transforms to '/usr/bin'
+and locale files are in '/usr/share/qt4/translations'
+
+--- qt/app.cc
++++ qt/app.cc
+@@ -98,7 +98,7 @@
+ installTranslator (&qtTranslator);
+
+ // install the transmission translator
+- appTranslator.load (QString (MY_CONFIG_NAME) + "_" + QLocale::system ().name (), QCoreApplication::applicationDirPath () + "/translations");
++ appTranslator.load (QString (MY_CONFIG_NAME) + "_" + QLocale::system ().name (), QLibraryInfo::location(QLibraryInfo::TranslationsPath) );
+ installTranslator (&appTranslator);
+
+ Formatter::initUnits ();
diff --git a/net-p2p/transmission/files/transmission-daemon.confd.4 b/net-p2p/transmission/files/transmission-daemon.confd.4
new file mode 100644
index 000000000000..8f3b1317a74b
--- /dev/null
+++ b/net-p2p/transmission/files/transmission-daemon.confd.4
@@ -0,0 +1,14 @@
+# This is the transmission-daemon configuration file. For other options and
+# better explanation, take a look at transmission-daemon manual page Note: it's
+# better to configure some settings (like username/password) in
+# /var/lib/transmission/config/settings.json to avoid other users see it with `ps`
+
+TRANSMISSION_OPTIONS="--encryption-preferred"
+
+# Run daemon as another user (username or username:groupname)
+# If you change this setting, chown -R /var/lib/transmission/config <and download directory, check web settings>
+#runas_user=transmission
+
+# Location of logfile (should be writeable for runas_user user)
+# Set logfile=syslog to use syslog for logging
+#logfile=/var/log/transmission/transmission.log
diff --git a/net-p2p/transmission/files/transmission-daemon.initd.9 b/net-p2p/transmission/files/transmission-daemon.initd.9
new file mode 100644
index 000000000000..a1d17d6053b3
--- /dev/null
+++ b/net-p2p/transmission/files/transmission-daemon.initd.9
@@ -0,0 +1,73 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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}
+
+SSD_OPTIONS=""
+
+depend() {
+ need net
+}
+
+check_config() {
+ if [ ! -d "${rundir}" ]; then
+ mkdir "${rundir}"
+ if [ -n "${runas_user}" ]; then
+ chown -R ${runas_user} "${rundir}"
+ fi
+ fi
+
+ # In case no config directory option passed use default
+ if ! $(echo ${TRANSMISSION_OPTIONS} | grep -q -e '\B-g' -e '\B--config-dir'); then
+ TRANSMISSION_OPTIONS="${TRANSMISSION_OPTIONS} --config-dir ${config_dir}"
+ # put download dir location on first run (and take it from config later)
+ if [ ! -f ${config_dir}/settings.json ]; then
+ TRANSMISSION_OPTIONS="${TRANSMISSION_OPTIONS} --download-dir ${download_dir}"
+ fi
+ fi
+
+ if [ -n "${runas_user}" ]; then
+ if [ -f /etc/init.d/sysfs ]; then
+ SSD_OPTIONS="${SSD_OPTIONS} --user ${runas_user}"
+ else
+ SSD_OPTIONS="${SSD_OPTIONS} --chuid ${runas_user}"
+ fi
+ fi
+}
+
+start() {
+ check_config
+
+ ebegin "Starting transmission daemon"
+ start-stop-daemon --start --quiet --pidfile ${pidfile} ${SSD_OPTIONS} \
+ --exec /usr/bin/transmission-daemon -- --pid-file ${pidfile} \
+ $(test ${logfile} != "syslog" && echo --logfile ${logfile}) \
+ ${TRANSMISSION_OPTIONS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping transmission daemon"
+ start-stop-daemon --stop --quiet --retry TERM/45/QUIT/15 --pidfile ${pidfile}
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading transmission configuration"
+ start-stop-daemon --signal HUP --pidfile ${pidfile}
+ eend $?
+}
+
diff --git a/net-p2p/transmission/metadata.xml b/net-p2p/transmission/metadata.xml
new file mode 100644
index 000000000000..6bccb486e525
--- /dev/null
+++ b/net-p2p/transmission/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>net-p2p</herd>
+ <maintainer>
+ <email>ssuominen@gentoo.org</email>
+ <name>Samuli Suominen</name>
+ </maintainer>
+ <use>
+ <flag name='lightweight'>Optimize transmission for low-resource systems (smaller cache size, prefer unencrypted peer connections, etc.)</flag>
+ <flag name='xfs'>Enable XFS filesystem capabilities by using <pkg>sys-fs/xfsprogs</pkg> headers (in building of fdlimit(.c))</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-p2p/transmission/transmission-2.84-r1.ebuild b/net-p2p/transmission/transmission-2.84-r1.ebuild
new file mode 100644
index 000000000000..9cbecb41267b
--- /dev/null
+++ b/net-p2p/transmission/transmission-2.84-r1.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils 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 lightweight systemd qt4 qt5 xfs"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux"
+
+RDEPEND=">=dev-libs/libevent-2.0.10:=
+ dev-libs/openssl:0=
+ 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
+ xfs? ( sys-fs/xfsprogs )"
+
+REQUIRED_USE="ayatana? ( gtk ) ?? ( qt4 qt5 )"
+
+DOCS="AUTHORS NEWS qt/README.txt"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+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/${PN}-daemon.service || die
+ # http://trac.transmissionbt.com/ticket/4324
+ sed -i -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' lib${PN}/Makefile.am || die
+ # Fix for broken translations path
+ epatch "${FILESDIR}"/${PN}-2.80-translations-path-fix.patch
+ # http://trac.transmissionbt.com/ticket/5700
+ sed -i -e '1iQMAKE_CXXFLAGS += -std=c++11' qt/qtr.pro || die
+
+ epatch_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
+ use qt4 && local -x QT_SELECT=4
+ use qt5 && local -x QT_SELECT=5
+ emake -C qt
+ lrelease qt/translations/*.ts || die
+ fi
+}
+
+src_install() {
+ default
+
+ rm -f "${ED}"/usr/share/${PN}/web/LICENSE
+
+ newinitd "${FILESDIR}"/${PN}-daemon.initd.9 ${PN}-daemon
+ newconfd "${FILESDIR}"/${PN}-daemon.confd.4 ${PN}-daemon
+ systemd_dounit daemon/${PN}-daemon.service
+
+ keepdir /var/{lib/${PN}/{config,downloads},log/${PN}}
+ fowners -R ${PN}:${PN} /var/{lib/${PN}/{,config,downloads},log/${PN}}
+
+ if use qt4 || use qt5; then
+ pushd qt >/dev/null || die
+ emake INSTALL_ROOT="${ED}"/usr install
+
+ domenu ${PN}-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}/${PN}-qt.png
+ done
+ doicon -s scalable icons/hicolor/scalable/${PN}-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
+
+ elog "If you use ${PN}-daemon, please, set 'rpc-username' and"
+ elog "'rpc-password' (in plain text, ${PN}-daemon will hash it on"
+ elog "start) in settings.json file located at /var/lib/${PN}/config or"
+ elog "any other appropriate config directory."
+ elog
+ elog "Since µTP is enabled by default, ${PN} 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
+}
diff --git a/net-p2p/transmission/transmission-2.84.ebuild b/net-p2p/transmission/transmission-2.84.ebuild
new file mode 100644
index 000000000000..8af517cf0491
--- /dev/null
+++ b/net-p2p/transmission/transmission-2.84.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils fdo-mime gnome2-utils qt4-r2 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 lightweight systemd qt4 xfs"
+KEYWORDS="amd64 ~arm ~mips ppc ppc64 x86 ~x86-fbsd ~amd64-linux"
+
+RDEPEND=">=dev-libs/libevent-2.0.10:=
+ dev-libs/openssl:0=
+ 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=
+ )"
+DEPEND="${RDEPEND}
+ >=dev-libs/glib-2.32
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/os-headers
+ virtual/pkgconfig
+ xfs? ( sys-fs/xfsprogs )"
+
+REQUIRED_USE="ayatana? ( gtk )"
+
+DOCS="AUTHORS NEWS qt/README.txt"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+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/${PN}-daemon.service || die
+ # http://trac.transmissionbt.com/ticket/4324
+ sed -i -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' lib${PN}/Makefile.am || die
+ # Fix for broken translations path
+ epatch "${FILESDIR}"/${PN}-2.80-translations-path-fix.patch
+ # http://trac.transmissionbt.com/ticket/5700
+ sed -i -e '1iQMAKE_CXXFLAGS += -std=c++11' qt/qtr.pro || die
+
+ epatch_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; then
+ pushd qt >/dev/null
+ eqmake4 qtr.pro
+ popd >/dev/null
+ fi
+}
+
+src_compile() {
+ emake
+
+ if use qt4; then
+ pushd qt >/dev/null
+ emake
+ lrelease translations/*.ts
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ rm -f "${ED}"/usr/share/${PN}/web/LICENSE
+
+ newinitd "${FILESDIR}"/${PN}-daemon.initd.9 ${PN}-daemon
+ newconfd "${FILESDIR}"/${PN}-daemon.confd.4 ${PN}-daemon
+ systemd_dounit daemon/${PN}-daemon.service
+
+ keepdir /var/{lib/${PN}/{config,downloads},log/${PN}}
+ fowners -R ${PN}:${PN} /var/{lib/${PN}/{,config,downloads},log/${PN}}
+
+ if use qt4; then
+ pushd qt >/dev/null
+ emake INSTALL_ROOT="${ED}"/usr install
+
+ domenu ${PN}-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}/${PN}-qt.png
+ done
+ doicon -s scalable icons/hicolor/scalable/${PN}-qt.svg
+
+ insinto /usr/share/qt4/translations
+ doins translations/*.qm
+ popd >/dev/null
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+
+ elog "If you use ${PN}-daemon, please, set 'rpc-username' and"
+ elog "'rpc-password' (in plain text, ${PN}-daemon will hash it on"
+ elog "start) in settings.json file located at /var/lib/${PN}/config or"
+ elog "any other appropriate config directory."
+ elog
+ elog "Since µTP is enabled by default, ${PN} 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
+}