Date: Tuesday, June 4, 2013 @ 21:44:02 Author: giovanni Revision: 187175
upgpkg: amule 10803-1 upstream release Added: amule/trunk/amule.install amule/trunk/amuled.systemd amule/trunk/amuleweb.systemd Modified: amule/trunk/PKGBUILD ------------------+ PKGBUILD | 19 ++++++++++++++----- amule.install | 34 ++++++++++++++++++++++++++++++++++ amuled.systemd | 11 +++++++++++ amuleweb.systemd | 13 +++++++++++++ 4 files changed, 72 insertions(+), 5 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-06-04 19:27:54 UTC (rev 187174) +++ PKGBUILD 2013-06-04 19:44:02 UTC (rev 187175) @@ -3,17 +3,23 @@ # Contributor: Henrik Ronellenfitsch <seari...@web.de> # Contributor: Alessio Sergi <sergi.alessio {at} gmail.com> # Contributor: Dario 'Dax' Vilardi <dax [at] deelab [dot] org> +# Contributor: Anatol Pomozov <ana...@google.com> pkgname=amule -pkgver=10802 -pkgrel=2 +pkgver=10803 +pkgrel=1 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=('46bbfbfba0af431b6baa0c30bd35600c') +install=amule.install +source=("http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2" + 'amuled.systemd' + 'amuleweb.systemd') +md5sums=('febf14f5b1185f25acde64f61b78ed38' + '59772c41860e238f1c822feb8ca8d47f' + '05975c5d94bfc41fddb894d98b1115d5') build() { cd "${srcdir}/aMule-SVN-r${pkgver}" @@ -40,5 +46,8 @@ 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" } Added: amule.install =================================================================== --- amule.install (rev 0) +++ amule.install 2013-06-04 19:44:02 UTC (rev 187175) @@ -0,0 +1,34 @@ +post_install() { + post_upgrade + passwd -l amule &>/dev/null + + # Generate a random password for amuled<->amuleweb communication + ec_password=$(tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1) + encripted_ec_password=$(echo -n $ec_password | md5sum | cut -d ' ' -f 1) + # Create a config file + sudo -u amule mkdir -p /var/lib/amule/.aMule + echo "[ExternalConnect] +AcceptExternalConnections=1 +ECPassword=$encripted_ec_password" > /var/lib/amule/.aMule/amule.conf + + sudo -u amule /usr/bin/amuleweb --write-config --password=$ec_password --admin-pass=amule + + echo "A new password for extarnal configuration is generated: $ec_password" + echo "Please follow https://wiki.archlinux.org/index.php/AMule how to setup" + echo "external connection (e.g. using amule-gui tool)." + echo "amuleweb can be started as 'systemctl start amuleweb'." + echo "Password for amuleweb: amule" +} + +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 -b '/var/lib' -m -s /bin/false amule +} + +post_remove(){ + /usr/bin/systemctl stop amuled.service amuleweb.service + + getent passwd amule >/dev/null && userdel amule + getent group amule >/dev/null && groupdel amule +} Added: amuled.systemd =================================================================== --- amuled.systemd (rev 0) +++ amuled.systemd 2013-06-04 19:44:02 UTC (rev 187175) @@ -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 Added: amuleweb.systemd =================================================================== --- amuleweb.systemd (rev 0) +++ amuleweb.systemd 2013-06-04 19:44:02 UTC (rev 187175) @@ -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