[oe-commits] Graeme Gregory : transmission_1.73.bb : makes this LSB compliant and stop messing with /home

git version control git at git.openembedded.org
Sat Aug 15 15:54:38 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 55afc69df3bedfc5d5c7d73a7debc8307edf40a6
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=55afc69df3bedfc5d5c7d73a7debc8307edf40a6

Author: Graeme Gregory <dp at xora.org.uk>
Date:   Sat Aug 15 14:56:26 2009 +0100

transmission_1.73.bb : makes this LSB compliant and stop messing with /home
added a /etc/default/transmission-daemon to contain paths and values used
by the daemon. Moved the homedir and config to /var/lib/transmission-daemon

---

 recipes/transmission/files/config         |    8 ++++++++
 recipes/transmission/files/init           |   14 +++++++++++---
 recipes/transmission/transmission_1.73.bb |   15 +++++++++------
 3 files changed, 28 insertions(+), 9 deletions(-)

diff --git a/recipes/transmission/files/config b/recipes/transmission/files/config
new file mode 100644
index 0000000..d1ea541
--- /dev/null
+++ b/recipes/transmission/files/config
@@ -0,0 +1,8 @@
+# Default values for transmission daemon
+# please fill in and enable service.
+DAEMON_ENABLED="NO"
+DAEMON_USER="transmission"
+DAEMON_GROUP="transmission"
+DOWNLOAD_DIR="/media/sda1/torrents/"
+CONFIG_DIR="/var/lib/transmission-daemon"
+
diff --git a/recipes/transmission/files/init b/recipes/transmission/files/init
index 85945a7..cfe3750 100755
--- a/recipes/transmission/files/init
+++ b/recipes/transmission/files/init
@@ -6,17 +6,25 @@
 #
 # 
 
+# load default values
+[ -f /etc/default/transmission-daemon ] && . /etc/default/transmission-daemon
 
+if [ "$DAEMON_ENABLED" != "YES" ] ; then
+	echo "Transmission Deamon Not Enabled"
+	echo "edit /etc/default/transmission to enable"
+	exit
+fi
 
 # Exit if the package is not installed
 test -f /usr/bin/transmission-daemon || exit 0
 
-SSDOPTIONS="--chuid transmission:transmission"
+SSDOPTIONS="--chuid $DAEMON_USER:$DAEMON_GROUP"
+TRANSOPTIONS="-g $CONFIG_DIR -w $DOWNLOAD_DIR"
 
 case "$1" in
   start)
     echo  "Starting transmission-daemon"
-    /sbin/start-stop-daemon $SSDOPTIONS --start --quiet --exec /usr/bin/transmission-daemon -- -w /home/transmission -g /home/transmission/.config
+    /sbin/start-stop-daemon $SSDOPTIONS --start --quiet --exec /usr/bin/transmission-daemon -- $TRANSOPTIONS
     ;;
   stop)
     echo  "Stopping transmission-daemon"
@@ -31,7 +39,7 @@ case "$1" in
         echo -n "."
     done
     echo  "Restarting transmission-daemon" 
-    /sbin/start-stop-daemon $SSDOPTIONS --start --quiet --exec /usr/bin/transmission-daemon -- -w /home/transmission -g /home/transmission/.config
+    /sbin/start-stop-daemon $SSDOPTIONS --start --quiet --exec /usr/bin/transmission-daemon -- $TRANSOPTIONS
     ;;
   *)
     echo "Usage: /etc/init.d/tranmission {start|stop|restart}"
diff --git a/recipes/transmission/transmission_1.73.bb b/recipes/transmission/transmission_1.73.bb
index 135bf55..9baa976 100644
--- a/recipes/transmission/transmission_1.73.bb
+++ b/recipes/transmission/transmission_1.73.bb
@@ -3,9 +3,10 @@ SECTION = "network"
 HOMEPAGE = "www.transmissionbt.com/"
 DEPENDS = "gtk+ gnutls openssl gettext libtool intltool-native curl glib-2.0-native"
 LICENSE = "GPLv2"
-PR = "r0"
+PR = "r1"
 SRC_URI = "http://mirrors.m0k.org/transmission/files/transmission-${PV}.tar.bz2 \
-           file://init"
+           file://init \
+           file://config"
 
 INITSCRIPT_NAME = "transmission"
 INITSCRIPT_PARAMS = "defaults 60 "
@@ -13,8 +14,11 @@ INITSCRIPT_PARAMS = "defaults 60 "
 inherit autotools update-rc.d
 
 do_install_append() {
-	install -d -p ${D}${sysconfdir}/init.d
+	install -d ${D}${sysconfdir}/init.d
 	install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/transmission
+	install -d ${D}${sysconfdir}/default
+	install -m 0755 ${WORKDIR}/config ${D}${sysconfdir}/default/transmission-daemon
+	install -d ${D}${localstatedir}/lib/transmission-daemon
 }
 
 FILES_${PN} += "${datadir}/icons"
@@ -22,9 +26,8 @@ FILES_${PN} += "${datadir}/icons"
 # No need for online check, since update-rc.d will prepend it to here
 pkg_postinst_${PN}() {
 grep -q transmission  ${sysconfdir}/group || addgroup transmission
-grep -q transmission ${sysconfdir}/passwd || adduser -h /home/transmission -S -D -G transmission -s ${base_bindir}/false transmission
-mkdir -p /home/transmission/.config
-chown transmission:transmission /home/transmission/.config
+grep -q transmission ${sysconfdir}/passwd || adduser -h ${localstatedir}/lib/transmission -S -D -G transmission -s ${base_bindir}/false transmission
+chown -R transmission:transmission /var/lib/transmission/
 }
 
 pkg_postrm_${PN}() {





More information about the Openembedded-commits mailing list