1DESCRIPTION = "Transmission is a fast, easy, and free BitTorrent client"
2SECTION = "network"
3HOMEPAGE = "https://transmissionbt.com/"
4LICENSE = "GPL-2.0"
5LIC_FILES_CHKSUM = "file://COPYING;md5=73f535ddffcf2a0d3af4f381f84f9b33"
6
7DEPENDS = "curl libevent gnutls openssl libtool intltool-native glib-2.0-native"
8RDEPENDS_${PN}-web = "${PN}"
9
10SRC_URI = " \
11	gitsm://github.com/transmission/transmission \
12	file://transmission-daemon \
13"
14
15# Transmission release 3.00
16SRCREV = "bb6b5a062ee594dfd4b7a12a6b6e860c43849bfd"
17PV = "3.00"
18
19S = "${WORKDIR}/git"
20
21inherit autotools gettext update-rc.d systemd mime-xdg
22
23PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)} \
24                 ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','',d)}"
25
26PACKAGECONFIG[gtk] = " --with-gtk,--without-gtk,gtk+3,"
27PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd,"
28
29# Weak default values for transmission user and group
30# Change them in bbappend if needed
31TRANSMISSION_USER ??= "root"
32TRANSMISSION_GROUP ??= "root"
33
34# Configure aborts with:
35# config.status: error: po/Makefile.in.in was not created by intltoolize.
36B = "${S}"
37do_configure_prepend() {
38	sed -i /AM_GLIB_GNU_GETTEXT/d ${S}/configure.ac
39	cd ${S}
40	./update-version-h.sh
41	intltoolize --copy --force --automake
42}
43
44do_install_append() {
45	if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
46		sed -i '/USERNAME=/c\USERNAME=${TRANSMISSION_USER}' ${WORKDIR}/transmission-daemon
47		install -d ${D}${sysconfdir}/init.d
48		install -m 0744 ${WORKDIR}/transmission-daemon ${D}${sysconfdir}/init.d/
49		chown ${TRANSMISSION_USER}:${TRANSMISSION_GROUP} ${D}${sysconfdir}/init.d/transmission-daemon
50	fi
51
52	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
53		sed -i '/User=/c\User=${TRANSMISSION_USER}' ${S}/daemon/transmission-daemon.service
54		install -d ${D}${systemd_unitdir}/system
55		install -m 0644 ${S}/daemon/transmission-daemon.service ${D}${systemd_unitdir}/system
56	fi
57}
58
59PACKAGES += "${PN}-gtk ${PN}-client ${PN}-web"
60
61FILES_${PN}-client = "${bindir}/transmission-remote ${bindir}/transmission-cli ${bindir}/transmission-create ${bindir}/transmission-show ${bindir}/transmission-edit"
62FILES_${PN}-gtk += "${bindir}/transmission-gtk ${datadir}/icons ${datadir}/applications ${datadir}/pixmaps"
63FILES_${PN}-web = "${datadir}/transmission/web"
64FILES_${PN} = "${bindir}/transmission-daemon ${sysconfdir}/init.d/transmission-daemon ${datadir}/appdata"
65
66SYSTEMD_SERVICE_${PN} = "transmission-daemon.service"
67
68# Script transmission-daemon following the guidelines in:
69# https://trac.transmissionbt.com/wiki/Scripts/initd
70INITSCRIPT_PACKAGES = "transmission-daemon"
71INITSCRIPT_NAME = "transmission-daemon"
72INITSCRIPT_PARAMS = "start 99 5 3 2 . stop 10 0 1 6 ."
73