Merge pull request #1077 from polvi/transmission

Transmission
This commit is contained in:
polvi 2015-02-07 13:01:44 -05:00
commit 94a675a42a
8 changed files with 1548 additions and 0 deletions

View File

@ -0,0 +1,14 @@
DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup unpack
DEPEND=>=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= ) >=dev-libs/glib-2.32 dev-util/intltool sys-devel/gettext virtual/os-headers virtual/pkgconfig xfs? ( sys-fs/xfsprogs ) !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.13:1.13 >=sys-devel/automake-1.14:1.14 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4 >=sys-apps/sed-4 virtual/pkgconfig
DESCRIPTION=A Fast, Easy and Free BitTorrent client
EAPI=5
HOMEPAGE=http://www.transmissionbt.com/
IUSE=ayatana gtk lightweight systemd qt4 xfs
KEYWORDS=amd64 ~arm ~mips ppc ppc64 x86 ~x86-fbsd ~amd64-linux
LICENSE=|| ( GPL-2 GPL-3 Transmission-OpenSSL-exception ) GPL-2 MIT
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= )
REQUIRED_USE=ayatana? ( gtk )
SLOT=0
SRC_URI=http://download.transmissionbt.com/transmission/files/transmission-2.84.tar.xz
_eclasses_=autotools c118b9a8e93bfef124f2d7a2fe56a95e base 87f7447ccfc06fd0729ff4684e11e0d6 eutils 6faef4c127028ccbba3a11400d24ae34 fdo-mime 0acfe1a88fd8751a1d5dc671168219fa gnome2-utils 5cdfd22a2163c9d3a891648bd19453a7 libtool 52d0e17251d04645ffaa61bfdd858944 multilib 3bf24e6abb9b76d9f6c20600f0b716bf qmake-utils 9e0174de733aecba0a7e66b2b01841d2 qt4-r2 7199e3db5b5908325487d379c6f67cf0 systemd 090342761f573a8280dd5aa6b0345f3b toolchain-funcs 0dfbfa13f57c6184f4728d12ac002aac user f54e098dd38ba1c0847a13e685b87747
_md5_=1fdb8804156956f24f1ed2ac05a9c3fe

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,21 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX transmission-2.80-translations-path-fix.patch 718 SHA256 94951127429649d18af5d9f04f9a4c1f2c698266fc6ee17b43d83015e2218548 SHA512 e317b23918fd47d27af3bca4694f8a71d6adb5f65ac5f3b30faa2d636d4420e6a691eca912c7be70103364f7c279f1b4ec851a5d8c5a1ca3dee880b465327fda WHIRLPOOL fbbabafb81d7e72fbf01a1b64d1c4a6e5473c254b14ed94e71e77ea8447982af3200ce76466df99d6cf9648c35f4e58dff83fe2cfd1b67b678c4b69a42982541
AUX transmission-daemon.confd.4 711 SHA256 249689688aad23d0d27ccdd08a0907fd85058d6a52ccd3467f756b07f5d059ee SHA512 dbc093fe00335bb207c28a4e810becc15e74b6f75e7579d561b160755d6b54bb23a45db39ee3480195a94a5e9bffdad692559d1b9662bba28119d18b713747a1 WHIRLPOOL c19f3a6d46ff5cf824e9f3d9df2ec4364c17d424a406b3922921e3385801b543f736ed7dd8e1b7f24cd81262e2ac162edd92d7b6b832909012ae4cd677d94c1d
AUX transmission-daemon.initd.9 2256 SHA256 06d047b47befe6aaf1b1542fdd50e84ea38e0fef004b5095f6096f33fa1901a3 SHA512 37205d2375b9baa631bb5b4cdc4d95b3bd63780aae118bce89286b1ea2f00859e276316519b7f0279ae8ce23423da79a60ae339d63ca0e131130912341d1a133 WHIRLPOOL a067c9c48014b330624ff2db153991a866b381ebbe213194a7af1150cb4766a62a67323ce3346622912e2acba135a28a05f83db8824e568968a0e6f898da586b
DIST transmission-2.84.tar.xz 3077836 SHA256 a9fc1936b4ee414acc732ada04e84339d6755cd0d097bcbd11ba2cfc540db9eb SHA512 d6c2b17e7f8180a41ac70f5b503dfdb0353c6419db25df1b393b18c987c56fda9e2fd4c3f4cda7f08c301877bd0b4711842c28121ceaaaae87f5792cc6c29a3d WHIRLPOOL 375f9c981d9d2ac308896e8b7d66d3643796c8e97d64a1e0d6fd2bffaafa55988b90ddb4eb98330edf062e835c0c5ce76749e7e66bf6806333673beb7569f342
EBUILD transmission-2.84.ebuild 4119 SHA256 b848dd07e3c80cf38e859382b32f996795188c33b163acfe5e612cc8acb18c2c SHA512 48481abfed004ed34fb1090fa8b9d466c37f1ce7bb9b29e1ad186ec610d51092d668a092501bcbb8ca43901f7d4aa2f2589a31305aed70550c6a9be1c7cceb38 WHIRLPOOL ba51b16d3f8af5d4d3ebe57c6574b1bede7b86a0fb09a953958e8f6e093a72d63457f327523242090db21badf14c11559ed4f87af6c7f677cc60cd0449998c54
MISC ChangeLog 44422 SHA256 a8a5eefa0e0166fe55bfdc123cadb117ce3a14e2446bd9496c1a2bd407f27cfe SHA512 36734dcb808d443d0ce9ed49d089ad5c45025b6edbbf0cfb192efc8f90062cdd728b7581f012ccc3d4f6dad93ec4b334a2d8fbb39ca68735d94934f751fa380a WHIRLPOOL e174d402af0e06b80b10afa3876f74fb30df15c8056fce8337432d8c70b01652957d820222a2dd56ebb85788570b9665a520126d42f0c4d8ba79a71d4c4dd550
MISC metadata.xml 566 SHA256 ee4ef67c4bf912c1b5e529965fc45eca1f41dbebf76bcf785c8fc7b38a602633 SHA512 60ee8ea3d363fa60f5a1f94ec9d8fe7653465cb2fc3de8c92d6945f5cb01468f7af580149ceefeb8fdd866af7b5ae2143b584853bf3aa5fcc69408a21e4566eb WHIRLPOOL b3b4ed16faa68d7abb0519e025607c55c68a1ba0462992ac1e8b3e7f775dca278039391041097abcb1063b6cc5fa3f8741ecd76587fb3533c437d780ce4b0423
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJUCUveAAoJEEdUh39IaPFN0GkIAJFwv2zXt4OINO8fonk673g2
yXnsBUcdh/d+pRiKcrON/io95WRI48Gfuf+5o8HVawEN1fY7CfWfasNzBO4Xh/uj
1dT6XhHih5OVe1lapU3tFBkH1oojoJtaUwKjf55Mnlrng+UDbxZzBc6AeZHeFTDb
+Uoyzwi3R3ys58lDbhEFOVZJjTDtOuYZnipR0VI21qORcEyMbGZy2yL4czATAuwS
XnJDar0wpA2jMaQMZQVKXwnjfPBYyi+TBzMOTqR1OQ9gkFXgS34FoRQMR1PEy9Od
qjT3NHsCjsD0SRfuxyeKiKM1FPCI0dpzmzVT4LwdS+brPgFGuAgVRiTKgJUKaZw=
=+Zkc
-----END PGP SIGNATURE-----

View File

@ -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 ();

View File

@ -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

View File

@ -0,0 +1,73 @@
#!/sbin/runscript
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/files/transmission-daemon.initd.9,v 1.1 2013/09/07 12:10:01 ssuominen Exp $
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 $?
}

View File

@ -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>

View File

@ -0,0 +1,152 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/transmission-2.84.ebuild,v 1.6 2014/09/05 05:39:30 ssuominen Exp $
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 miniupnp natpmp 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=
natpmp? ( net-libs/libnatpmp:= )
miniupnp? ( >=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 \
$(use_enable natpmp 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
}