From b85aab46386af666d9c0e0f2429e985d43b19ae1 Mon Sep 17 00:00:00 2001 From: Mike Gilbert Date: Sun, 27 Nov 2016 03:36:12 -0500 Subject: net-p2p/transmission: add live ebuild and port to cmake Package-Manager: portage-2.3.2_p11 --- net-p2p/transmission/Manifest | 3 + net-p2p/transmission/transmission-9999.ebuild | 167 ++++++++++++++++++++++++++ 2 files changed, 170 insertions(+) create mode 100644 net-p2p/transmission/transmission-9999.ebuild diff --git a/net-p2p/transmission/Manifest b/net-p2p/transmission/Manifest index 11ea7eafe42e..911531640c30 100644 --- a/net-p2p/transmission/Manifest +++ b/net-p2p/transmission/Manifest @@ -1,2 +1,5 @@ +DIST dht-cc379e406d.tar.gz 28109 SHA256 a822d878f7f0ba796a5b056d076f0e187cd7b191890f874dc6eacc6f5814343d SHA512 921c06b23cd4b464bcb156f51e11b123ab0d1b21272270c338844161dc6c9d212e9841f714764497278816987c9fdc058f91dec1b1f168a63044325a56878ad2 WHIRLPOOL 7329310fbde27dede0b38c5b3577b34b5f8c3d228eadb0418e82e3d8770739bbbdfcbf2404e6f1f04d1c68dcbedd6c04f0b8cd5bcc16046dfc6ccf4b7a4a2d83 +DIST libb64-c1e3323498.tar.gz 13965 SHA256 76a59d85147942d3d15739ce4b6e9f3657611b67deff24d37519fb270c1afa68 SHA512 4117b603167fc5e014af3ad6b6603f0758dd6432b1603383c24a5f4cb6a9171267fcfaf1ae591cbe21a0fbe3f648af6e408c579d02fbc84a94f4427283cef6f1 WHIRLPOOL 30c594d2de71c63061869e68649f1f1c5ca3664da2157637a93b6bfaa0953f81dc91026c402d703d23ac477e0d9e0964c7836c5b544ef01f5dba4b556d1a7eea +DIST libutp-7c4f19abdf.tar.gz 71062 SHA256 3a85f50ad9f5be75375c96cbf9124ada1c62659a6e12a33ccadc6e27e10ba982 SHA512 24629fe060f899686f9168fd978b72f74771285801416d70ebd4b9ae54497b7a88f9faf00dcab8261e76c82419ef4373ce7a926330a3166c0b502a6510c71c3a WHIRLPOOL 0db94e084840e22e2a4c617580e891571319610e03add689e3fff1cbcd1040c40dde860cf796bee6a9e73f0cb327a2313e72e2f6bf3db3c01e2ccd6b3a2f6ef7 DIST transmission-2.84.tar.xz 3077836 SHA256 a9fc1936b4ee414acc732ada04e84339d6755cd0d097bcbd11ba2cfc540db9eb SHA512 d6c2b17e7f8180a41ac70f5b503dfdb0353c6419db25df1b393b18c987c56fda9e2fd4c3f4cda7f08c301877bd0b4711842c28121ceaaaae87f5792cc6c29a3d WHIRLPOOL 375f9c981d9d2ac308896e8b7d66d3643796c8e97d64a1e0d6fd2bffaafa55988b90ddb4eb98330edf062e835c0c5ce76749e7e66bf6806333673beb7569f342 DIST transmission-2.92.tar.xz 3378116 SHA256 3a8d045c306ad9acb7bf81126939b9594553a388482efa0ec1bfb67b22acd35f SHA512 4d99476bee88cedcc4238a0eee64a4089016933cbfc1cfb1cca023ad4ebcfe46375c9e7651a17af4aeaaf1feb19cbd8166aa56ef7992d9e745a7bbcbe8efca11 WHIRLPOOL a2eab113fd895001cf72cd79c4ac9a4767eb9fb756a3fb9b1d0db6aa283d19a6aec739b8681a3a5a26ef630cec68f004e14f8654221f0528e30927f37339887f 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 +} -- cgit v1.2.3-65-gdbad