Commit c0f4bb97 authored by Maxim Mikityanskiy's avatar Maxim Mikityanskiy Committed by Thomas Petazzoni
Browse files

transmission: improve systemd support



Support running transmission-daemon in system-wide mode using systemd:

1. Pass --with-systemd-daemon to configure script if systemd is enabled.

2. Create the transmission user if having daemon

3. Install transmission-daemon.service for systemd.

[Aurélien : Fix symlink relative path, use upstream service file,
no need for config path, and use transmission user in sysv script,
remove sysctl stuff]

Signed-off-by: default avatarMaxim Mikityanskiy <maxtram95@gmail.com>
Signed-off-by: default avatarAurélien Chabot <aurelien@chabot.fr>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: default avatarMaxime Hadjinlian <maxime.hadjinlian@gmail.com>
parent cac3cf8f
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -24,9 +24,7 @@
# by default, this is set to 'transmission'.
# For the sake of security you shouldn't set a password
# on this user
#USERNAME=transmission
USERNAME=default

USERNAME=transmission


# ----- *ADVANCED* CONFIGURATION -----
+19 −0
Original line number Diff line number Diff line
@@ -36,11 +36,30 @@ endif
ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
TRANSMISSION_CONF_OPTS += --enable-daemon

ifeq ($(BR2_PACKAGE_SYSTEMD),y)
TRANSMISSION_DEPENDENCIES += systemd
TRANSMISSION_CONF_OPTS += --with-systemd-daemon
else
TRANSMISSION_CONF_OPTS += --without-systemd-daemon
endif

define TRANSMISSION_USERS
	transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
endef

define TRANSMISSION_INSTALL_INIT_SYSV
	$(INSTALL) -m 0755 -D package/transmission/S92transmission \
		$(TARGET_DIR)/etc/init.d/S92transmission
endef

define TRANSMISSION_INSTALL_INIT_SYSTEMD
	$(INSTALL) -D -m 0755 $(@D)/daemon/transmission-daemon.service \
		$(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service
	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
	ln -fs ../../../../usr/lib/systemd/system/transmission-daemon.service \
		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
endef

else
TRANSMISSION_CONF_OPTS += --disable-daemon
endif