summaryrefslogtreecommitdiff
path: root/extra/amule
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-10-28 01:15:28 -0700
committerroot <root@rshg054.dnsready.net>2013-10-28 01:15:28 -0700
commit1a32448c2c53b0e66ce0fe14c5dd2057afd432bc (patch)
treed94819e60d05fada511b43feec6f7e46386a215a /extra/amule
parent2886140ddb1db32f36cb0b27e93888442a603a53 (diff)
Mon Oct 28 01:14:27 PDT 2013
Diffstat (limited to 'extra/amule')
-rw-r--r--extra/amule/PKGBUILD19
-rw-r--r--extra/amule/amule.install29
-rw-r--r--extra/amule/amuled.systemd11
-rw-r--r--extra/amule/amuleweb.systemd13
4 files changed, 67 insertions, 5 deletions
diff --git a/extra/amule/PKGBUILD b/extra/amule/PKGBUILD
index 44657193e..91b08dca4 100644
--- a/extra/amule/PKGBUILD
+++ b/extra/amule/PKGBUILD
@@ -1,19 +1,25 @@
-# $Id: PKGBUILD 193960 2013-09-08 17:48:29Z giovanni $
+# $Id: PKGBUILD 197597 2013-10-27 14:10:21Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Henrik Ronellenfitsch <searinox@web.de>
# Contributor: Alessio Sergi <sergi.alessio {at} gmail.com>
# Contributor: Dario 'Dax' Vilardi <dax [at] deelab [dot] org>
+# Contributor: Anatol Pomozov <anatol.pomozov@gmail.com>
pkgname=amule
pkgver=10808
-pkgrel=1
+pkgrel=2
pkgdesc="An eMule-like client for ed2k p2p network"
arch=('i686' 'x86_64')
url="http://www.amule.org"
license=('GPL')
depends=('wxgtk' 'gd' 'geoip' 'libupnp' 'crypto++')
-source=("http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2")
-md5sums=('68099241871f4e47eee06bebc7ce20a1')
+install=amule.install
+source=("http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2"
+ 'amuled.systemd'
+ 'amuleweb.systemd')
+md5sums=('68099241871f4e47eee06bebc7ce20a1'
+ '59772c41860e238f1c822feb8ca8d47f'
+ '05975c5d94bfc41fddb894d98b1115d5')
build() {
cd "${srcdir}/aMule-SVN-r${pkgver}"
@@ -40,5 +46,8 @@ build() {
package() {
cd "${srcdir}/aMule-SVN-r${pkgver}"
- make DESTDIR=${pkgdir}/ install
+ make DESTDIR=${pkgdir} install
+
+ install -D -m644 "${srcdir}/amuled.systemd" "${pkgdir}/usr/lib/systemd/system/amuled.service"
+ install -D -m644 "${srcdir}/amuleweb.systemd" "${pkgdir}/usr/lib/systemd/system/amuleweb.service"
}
diff --git a/extra/amule/amule.install b/extra/amule/amule.install
new file mode 100644
index 000000000..62dab1173
--- /dev/null
+++ b/extra/amule/amule.install
@@ -0,0 +1,29 @@
+post_install() {
+ post_upgrade
+ passwd -l amule &>/dev/null
+}
+
+_config_instructions() {
+ echo "If you plan to use external client (e.g. amuleGUI or amuleweb) then you need to"
+ echo "provide [ExternalConnect] configuration."
+ echo "You also need to specify amuleweb password."
+ echo "Please follow https://wiki.archlinux.org/index.php/AMule for more information."
+ echo "amuleweb can be started as 'systemctl start amuleweb'."
+}
+
+post_upgrade() {
+ # create user/group that the daemon will run as by default, do not delete this on uninstall, as it will own files
+ getent group amule >/dev/null || groupadd amule
+ getent passwd amule >/dev/null || useradd -c 'aMule Client' -g amule -d '/var/lib/amule' -m -s /bin/false amule
+
+ if [ ! -e /var/lib/amule/.aMule/amule.conf ]; then
+ _config_instructions
+ fi
+}
+
+post_remove() {
+ # TOTHINK: delete homedir and user account/group?
+ #getent passwd amule >/dev/null && userdel amule
+ #getent group amule >/dev/null && groupdel amule
+ true
+}
diff --git a/extra/amule/amuled.systemd b/extra/amule/amuled.systemd
new file mode 100644
index 000000000..e1878dfd9
--- /dev/null
+++ b/extra/amule/amuled.systemd
@@ -0,0 +1,11 @@
+[Unit]
+Description=aMule Daemon
+After=network.target
+
+# This assumes that a user 'amule' exists, with a writeable home directory
+[Service]
+User=amule
+ExecStart=/usr/bin/amuled
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra/amule/amuleweb.systemd b/extra/amule/amuleweb.systemd
new file mode 100644
index 000000000..1799f4ae8
--- /dev/null
+++ b/extra/amule/amuleweb.systemd
@@ -0,0 +1,13 @@
+[Unit]
+Description=aMule Webserver
+Requires=amuled.service
+
+[Service]
+User=amule
+ExecStart=/usr/bin/amuleweb --quiet
+# If amuled still starting then amuleweb exits, restart until amuleweb is up
+Restart=on-success
+RestartSec=3s
+
+[Install]
+WantedBy=multi-user.target