summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2016-11-27 03:36:12 -0500
committerMike Gilbert <floppym@gentoo.org>2016-11-27 03:48:29 -0500
commitb85aab46386af666d9c0e0f2429e985d43b19ae1 (patch)
tree9e118e86db63c6c2888283ef2787bff16b9a26fc /net-p2p/transmission/transmission-9999.ebuild
parentmedia-libs/libextractor: fix compilation with USE=tidy (diff)
downloadgentoo-b85aab46386af666d9c0e0f2429e985d43b19ae1.tar.gz
gentoo-b85aab46386af666d9c0e0f2429e985d43b19ae1.tar.bz2
gentoo-b85aab46386af666d9c0e0f2429e985d43b19ae1.zip
net-p2p/transmission: add live ebuild and port to cmake
Package-Manager: portage-2.3.2_p11
Diffstat (limited to 'net-p2p/transmission/transmission-9999.ebuild')
-rw-r--r--net-p2p/transmission/transmission-9999.ebuild167
1 files changed, 167 insertions, 0 deletions
diff --git a/net-p2p/transmission/transmission-9999.ebuild b/net-p2p/transmission/transmission-9999.ebuild
new file mode 100644
index 000000000000..0775626f2fb4
--- /dev/null
+++ b/net-p2p/transmission/transmission-9999.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit cmake-utils gnome2-utils readme.gentoo-r1 systemd user xdg-utils
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/transmission/transmission"
+else
+ SRC_URI="https://github.com/transmission/transmission/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux"
+fi
+
+# See CMakeLists
+DHT_ID="cc379e406d"
+UTP_ID="7c4f19abdf"
+B64_ID="c1e3323498"
+
+SRC_URI+="
+ https://github.com/transmission/dht/archive/${DHT_ID}.tar.gz -> dht-${DHT_ID}.tar.gz
+ https://github.com/transmission/libutp/archive/${UTP_ID}.tar.gz -> libutp-${UTP_ID}.tar.gz
+ https://github.com/transmission/libb64/archive/${B64_ID}.tar.gz -> libb64-${B64_ID}.tar.gz
+"
+
+DESCRIPTION="A fast, easy, and free BitTorrent client"
+HOMEPAGE="https://transmissionbt.com/"
+
+# 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="gtk libressl lightweight nls qt5 systemd test"
+
+RDEPEND="
+ >=dev-libs/libevent-2.0.10:=
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl: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/libappindicator:3
+ >=dev-libs/glib-2.32:2
+ >=x11-libs/gtk+-3.4:3
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtdbus:5
+ )
+ systemd? ( >=sys-apps/systemd-209:= )
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ nls? (
+ virtual/libintl
+ gtk? (
+ dev-util/intltool
+ sys-devel/gettext
+ )
+ qt5? (
+ dev-qt/linguist-tools:5
+ )
+ )
+"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ else
+ unpack ${P}.tar.gz
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DOCDIR=share/doc/${PF}
+
+ -DENABLE_GTK=$(usex gtk ON OFF)
+ -DENABLE_LIGHTWEIGHT=$(usex lightweight ON OFF)
+ -DENABLE_NLS=$(usex nls ON OFF)
+ -DENABLE_QT=$(usex qt5 ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ -DUSE_QT5=ON
+
+ -DUSE_SYSTEM_EVENT2=ON
+ -DUSE_SYSTEM_DHT=OFF
+ -DUSE_SYSTEM_MINIUPNPC=ON
+ -DUSE_SYSTEM_NATPMP=ON
+ -DUSE_SYSTEM_UTP=OFF
+ -DUSE_SYSTEM_B64=OFF
+
+ -DWITH_CRYPTO=openssl
+ -DWITH_INOTIFY=ON
+ -DWITH_SYSTEMD=$(usex systemd ON OFF)
+ )
+
+ cmake-utils_src_configure
+
+ symlink_tarball() {
+ local srcdir="${BUILD_DIR}/third-party/${1}-${3}/src"
+ mkdir -p "${srcdir}" || die
+ ln -s "${DISTDIR}/${2}-${3}.tar.gz" "${srcdir}/${3}.tar.gz" || die
+ }
+
+ symlink_tarball dht dht "${DHT_ID}"
+ symlink_tarball utp libutp "${UTP_ID}"
+ symlink_tarball b64 libb64 "${B64_ID}"
+}
+
+DISABLE_AUTOFORMATTING=1
+DOC_CONTENTS="\
+If you use transmission-daemon, please, set 'rpc-username' and
+'rpc-password' (in plain text, transmission-daemon will hash it on
+start) in settings.json file located at /var/lib/transmission/config or
+any other appropriate config directory.
+
+Since µTP is enabled by default, transmission needs large kernel buffers for
+the UDP socket. You can append following lines into /etc/sysctl.conf:
+
+net.core.rmem_max = 4194304
+net.core.wmem_max = 1048576
+
+and run sysctl -p"
+
+src_install() {
+ cmake-utils_src_install
+
+ newinitd "${FILESDIR}"/transmission-daemon.initd.10 transmission-daemon
+ newconfd "${FILESDIR}"/transmission-daemon.confd.4 transmission-daemon
+ systemd_dounit daemon/transmission-daemon.service
+ systemd_install_serviced "${FILESDIR}"/transmission-daemon.service.conf
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ gnome2_icon_cache_update
+
+ enewgroup transmission
+ enewuser transmission -1 -1 /var/lib/transmission transmission
+
+ if [[ ! -e "${EROOT%/}"/var/lib/transmission ]]; then
+ mkdir -p "${EROOT%/}"/var/lib/transmission || die
+ chown transmission:transmission "${EROOT%/}"/var/lib/transmission || die
+ fi
+
+ readme.gentoo_print_elog
+}