summaryrefslogtreecommitdiffstats
path: root/abs/extra/community/mpd
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/community/mpd')
-rw-r--r--abs/extra/community/mpd/PKGBUILD45
-rwxr-xr-xabs/extra/community/mpd/mpd42
-rw-r--r--abs/extra/community/mpd/mpd.install23
3 files changed, 110 insertions, 0 deletions
diff --git a/abs/extra/community/mpd/PKGBUILD b/abs/extra/community/mpd/PKGBUILD
new file mode 100644
index 0000000..75a79ee
--- /dev/null
+++ b/abs/extra/community/mpd/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 27462 2009-02-22 02:31:36Z eric $
+# Maintainer: Damir Perisa <damir.perisa@bluewin.ch>
+# Contributor: Ben <ben@benmazer.net>
+
+pkgname=mpd
+pkgver=0.15.3
+pkgrel=1
+pkgdesc="Music daemon that plays MP3, FLAC, and Ogg Vorbis files"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://musicpd.org"
+depends=('libid3tag' 'libmad' 'flac>=1.1.3' 'audiofile' 'faad2>=2.6' 'libmikmod'
+ 'alsa-lib' 'libshout' 'libmpcdec>=1.2.5' 'libsamplerate' 'libao' 'ffmpeg'
+ 'wavpack' 'glib2' 'curl')
+install=mpd.install
+source=(http://downloads.sourceforge.net/musicpd/${pkgname}-${pkgver}.tar.gz
+ 'mpd')
+md5sums=('43e854e7f46ac87bb1f1a7247ae4b902'
+ 'b1fd15de359db08e4b9ae4b199640f0e')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --disable-jack \
+ --enable-ao --enable-mod \
+ --with-zeroconf=no
+ make || return 1
+ make DESTDIR=${pkgdir} install
+
+ # set ours dirs in mpd.conf file
+ sed -i 's|music_directory.*$|#music_directory "path_to_your_music_collection"|1' doc/mpdconf.example
+ sed -i 's|playlist_directory.*$|playlist_directory "/var/lib/mpd/playlists"|1' doc/mpdconf.example
+ sed -i 's|db_file.*$|db_file "/var/lib/mpd/mpd.db"|1' doc/mpdconf.example
+ sed -i 's|log_file.*$|log_file "/var/log/mpd/mpd.log"|1' doc/mpdconf.example
+ sed -i 's|error_file.*$|error_file "/var/log/mpd/mpd.error"|1' doc/mpdconf.example
+ sed -i 's|#pid_file.*$|pid_file "/var/run/mpd/mpd.pid"|1' doc/mpdconf.example
+ sed -i 's|#state_file.*$|state_file "/var/lib/mpd/mpdstate"|1' doc/mpdconf.example
+ sed -i 's|#user.*$|user "mpd"|1' doc/mpdconf.example
+
+ install -Dm644 doc/mpdconf.example ${pkgdir}/etc/mpd.conf.example || return 1
+
+ install -D ${srcdir}/mpd ${pkgdir}/etc/rc.d/mpd || return 1
+ install -d ${pkgdir}/var/lib/mpd/playlists ${pkgdir}/var/log/mpd ${pkgdir}/var/run/mpd
+}
diff --git a/abs/extra/community/mpd/mpd b/abs/extra/community/mpd/mpd
new file mode 100755
index 0000000..76ec1c0
--- /dev/null
+++ b/abs/extra/community/mpd/mpd
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+case "$1" in
+ start)
+ stat_busy "Starting Music Player Daemon"
+ /usr/bin/mpd /etc/mpd.conf &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon mpd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Music Player Daemon"
+ /usr/bin/mpd --kill /etc/mpd.conf &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon mpd
+ stat_done
+ fi
+ ;;
+ create-db)
+ stat_busy "Creating mpd's database ..."
+ logpath="/var/log/mpd/mpd.db-creation"
+ /usr/bin/mpd --create-db /etc/mpd.conf > $logpath \
+ && stat_busy "Output written to $logpath"
+ stat_done
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart|create-db}"
+esac
+exit 0
diff --git a/abs/extra/community/mpd/mpd.install b/abs/extra/community/mpd/mpd.install
new file mode 100644
index 0000000..e44c9be
--- /dev/null
+++ b/abs/extra/community/mpd/mpd.install
@@ -0,0 +1,23 @@
+# arg 1: the new package version
+post_install() {
+ echo "==> mpd: Create a config under /etc/mpd.conf before using MPD (Example: /etc/mpd.conf.example)"
+ groupadd -g 45 mpd &>/dev/null
+ useradd -u 45 -g mpd -d /var/lib/mpd -s /bin/true mpd &>/dev/null
+ gpasswd -a mpd audio &>/dev/null
+ chown mpd:mpd -R /var/{lib,log,run}/mpd
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ if [ "$(vercmp $2 0.12)" -lt 0 ]; then
+ echo "==> mpd: upgrade from 0.11 -> 0.12: configuration file syntax changed, "
+ echo "==> mpd: make sure to update your configuration file! example conf: /etc/mpd.conf.example"
+ fi
+ chown mpd:mpd -R /var/{lib,log,run}/mpd
+}
+
+# arg 1: the old package version
+pre_remove() {
+ userdel mpd &>/dev/null
+}