summaryrefslogtreecommitdiff
path: root/recipes/musicpd
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/musicpd
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/musicpd')
-rw-r--r--recipes/musicpd/glurp_0.11.3.bb11
-rw-r--r--recipes/musicpd/gmpc_0.11.2.bb12
-rw-r--r--recipes/musicpd/gmpc_0.17.96.bb22
-rw-r--r--recipes/musicpd/gmpc_svn.bb14
-rw-r--r--recipes/musicpd/libmpd_0.17.96.bb12
-rw-r--r--recipes/musicpd/mpc_0.15.bb10
-rw-r--r--recipes/musicpd/mpd-alsa_0.11.5.bb40
-rw-r--r--recipes/musicpd/mpd-alsa_0.14.2.bb62
-rw-r--r--recipes/musicpd/mpd/fix-mod-support.patch23
-rw-r--r--recipes/musicpd/mpd/mpd.conf338
-rw-r--r--recipes/musicpd/mpd/mpd.init32
-rw-r--r--recipes/musicpd/mpd/save-volume-state.patch31
-rw-r--r--recipes/musicpd/mpd_0.14.2.bb44
-rw-r--r--recipes/musicpd/ncmpc_0.11.1.bb9
-rw-r--r--recipes/musicpd/py-libmpdclient_0.10.0.bb9
15 files changed, 669 insertions, 0 deletions
diff --git a/recipes/musicpd/glurp_0.11.3.bb b/recipes/musicpd/glurp_0.11.3.bb
new file mode 100644
index 0000000000..59cea4f8c9
--- /dev/null
+++ b/recipes/musicpd/glurp_0.11.3.bb
@@ -0,0 +1,11 @@
+DESCRIPTION = "glurp - frontend for mpd"
+HOMEPAGE = "http://www.musicpd.org/glurp.shtml"
+SECTION = "x11/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "gtk+ libglade"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/glurp/glurp-${PV}.tar.gz"
+
+LDFLAGS += "-export-dynamic"
+
+inherit autotools
diff --git a/recipes/musicpd/gmpc_0.11.2.bb b/recipes/musicpd/gmpc_0.11.2.bb
new file mode 100644
index 0000000000..6ed2ada569
--- /dev/null
+++ b/recipes/musicpd/gmpc_0.11.2.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "GTK+ Frontend for mpd"
+HOMEPAGE = "http://www.musicpd.org/gmpc.shtml"
+SECTION = "x11/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "gtk+ libglade gnome-vfs"
+PR = "r1"
+
+SRC_URI = "http://mercury.chem.pitt.edu/~shank/gmpc-${PV}.tar.gz"
+
+LDFLAGS += "-export-dynamic"
+
+inherit autotools
diff --git a/recipes/musicpd/gmpc_0.17.96.bb b/recipes/musicpd/gmpc_0.17.96.bb
new file mode 100644
index 0000000000..4f9e23d205
--- /dev/null
+++ b/recipes/musicpd/gmpc_0.17.96.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "GTK+ Frontend for mpd"
+HOMEPAGE = "http://www.musicpd.org/gmpc.shtml"
+SECTION = "x11/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "curl libsexy gob2-native gob2 libmpd gtk+ libglade gnome-vfs"
+PR = "r0"
+
+inherit gnome
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/gmpc-${PV}.tar.gz"
+
+LDFLAGS += "-export-dynamic"
+
+do_configure() {
+ sed -i -e s:'head -1':'head -n1':g configure
+ gnu-configize
+ oe_runconf
+}
+
+FILES_${PN} += "${datadir}/icons"
+
+
diff --git a/recipes/musicpd/gmpc_svn.bb b/recipes/musicpd/gmpc_svn.bb
new file mode 100644
index 0000000000..72fd3af1b6
--- /dev/null
+++ b/recipes/musicpd/gmpc_svn.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "GTK+ Frontend for mpd"
+HOMEPAGE = "http://www.musicpd.org/gmpc.shtml"
+SECTION = "x11/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "libmpd gtk+ libglade gnome-vfs gob2 curl"
+SRCDATE = "20070120"
+PV = "0.13.0+svn${SRCDATE}"
+
+SRC_URI = "svn://svn.musicpd.org/gmpc;module=trunk;proto=https"
+S = "${WORKDIR}/trunk"
+
+LDFLAGS += "-export-dynamic"
+
+inherit autotools
diff --git a/recipes/musicpd/libmpd_0.17.96.bb b/recipes/musicpd/libmpd_0.17.96.bb
new file mode 100644
index 0000000000..0d325f604f
--- /dev/null
+++ b/recipes/musicpd/libmpd_0.17.96.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "Music Player Daemon (mpd) library"
+HOMEPAGE = "http://www.musicpd.org"
+SECTION = "libs/multimedia"
+LICENSE = "GPLv2"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/libmpd-${PV}.tar.gz"
+
+inherit autotools_stage
+
+AUTOTOOLS_STAGE_PKGCONFIG = "1"
+
+
diff --git a/recipes/musicpd/mpc_0.15.bb b/recipes/musicpd/mpc_0.15.bb
new file mode 100644
index 0000000000..738b6d4be2
--- /dev/null
+++ b/recipes/musicpd/mpc_0.15.bb
@@ -0,0 +1,10 @@
+DESCRIPTION = "Command-line (scriptable) Music Player Daemon (mpd) Client"
+HOMEPAGE = "http://www.musicpd.org/mpc.shtml"
+SECTION = "console/multimedia"
+LICENSE = "GPLv2"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/mpc-${PV}.tar.bz2"
+EXTRA_OECONF = "--with-iconv-libraries=${STAGING_LIBDIR} \
+ --with-iconv-includes=${STAGING_INCDIR}"
+
+inherit autotools
diff --git a/recipes/musicpd/mpd-alsa_0.11.5.bb b/recipes/musicpd/mpd-alsa_0.11.5.bb
new file mode 100644
index 0000000000..82b24603a0
--- /dev/null
+++ b/recipes/musicpd/mpd-alsa_0.11.5.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "Music Player Daemon (mpd). This version is configured for alsa support"
+HOMEPAGE = "http://www.musicpd.org"
+SECTION = "console/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "libvorbis libogg libao-alsa zlib libmikmod flac audiofile virtual/libiconv \
+ ${@base_conditional('ENTERPRISE_DISTRO', '1', '', 'libmad libid3tag', d)}"
+RDEPENDS = "libao-alsa"
+PR = "r4"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/mpd-${PV}.tar.gz \
+ file://mpd/save-volume-state.patch;patch=1 file://mpd/mpd.init"
+S = "${WORKDIR}/mpd-${PV}"
+
+inherit autotools update-rc.d
+INITSCRIPT_NAME = "mpd"
+
+# Setting --enable-mpd-{mad,id3tag} causes local caches of the libraries to
+# be built, instead we use the OE built versions which should be installed
+# in staging - remove the --with and replace with --enable to use the local
+# versions.
+
+EXTRA_OECONF = "--enable-ogg \
+ --with-iconv-libraries=${STAGING_LIBDIR} \
+ --with-iconv-includes=${STAGING_INCDIR} \
+ --with-vorbis-libraries=${STAGING_LIBDIR} \
+ --with-vorbis-includes=${STAGING_INCDIR} \
+ --with-ogg-libraries=${STAGING_LIBDIR} \
+ --with-ogg-includes=${STAGING_INCDIR} \
+ --with-ao-libraries=${STAGING_LIBDIR} \
+ --with-ao-includes=${STAGING_INCDIR} \
+ --with-id3tag-libraries=${STAGING_LIBDIR} \
+ --with-id3tag-includes=${STAGING_INCDIR} \
+ --with-mad-libraries=${STAGING_LIBDIR} \
+ --with-mad-includes=${STAGING_INCDIR} \
+ --without-faad"
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/mpd/mpd.init ${D}${sysconfdir}/init.d/mpd
+}
diff --git a/recipes/musicpd/mpd-alsa_0.14.2.bb b/recipes/musicpd/mpd-alsa_0.14.2.bb
new file mode 100644
index 0000000000..87b59a1bcf
--- /dev/null
+++ b/recipes/musicpd/mpd-alsa_0.14.2.bb
@@ -0,0 +1,62 @@
+DESCRIPTION = "Music Player Daemon (mpd). This version is configured for alsa support"
+HOMEPAGE = "http://www.musicpd.org"
+SECTION = "console/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "libvorbis libogg libao-alsa zlib flac audiofile virtual/libiconv faad2 \
+ ${@base_conditional('ENTERPRISE_DISTRO', '1', '', 'libmad libid3tag', d)}"
+RDEPENDS = "libao-alsa"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/mpd-${PV}.tar.bz2 \
+file://mpd/mpd.conf \
+file://mpd/mpd.init"
+
+PR = "r3"
+
+S = "${WORKDIR}/mpd-${PV}"
+inherit autotools update-rc.d
+INITSCRIPT_NAME = "mpd"
+
+# Setting --enable-mpd-{mad,id3tag} causes local caches of the libraries to
+# be built, instead we use the OE built versions which should be installed
+# in staging - remove the --with and replace with --enable to use the local
+# versions.
+
+EXTRA_OECONF = "\
+--enable-ogg \
+--enable-oggvorbis \
+--disable-oggflac \
+--enable-flac \
+--enable-faad \
+--with-ao-libraries=${STAGING_LIBDIR} \
+--with-ao-includes=${STAGING_INCDIR} \
+--with-iconv-libraries=${STAGING_LIBDIR} \
+--with-iconv-includes=${STAGING_INCDIR} \
+--with-id3tag-libraries=${STAGING_LIBDIR} \
+--with-id3tag-includes=${STAGING_INCDIR} \
+--with-faad-libraries=${STAGING_LIBDIR} \
+--with-faad-includes=${STAGING_INCDIR} \
+--with-mad-libraries=${STAGING_LIBDIR} \
+--with-mad-includes=${STAGING_INCDIR} \
+--with-ogg-libraries=${STAGING_LIBDIR} \
+--with-ogg-includes=${STAGING_INCDIR} \
+--with-vorbis-libraries=${STAGING_LIBDIR} \
+--with-vorbis-includes=${STAGING_INCDIR} \
+--disable-aotest \
+--disable-alsatest \
+--disable-oggtest \
+--disable-vorbistest \
+--disable-libFLACtest \
+--disable-libOggFLACtest \
+--disable-audiofiletest \
+--disable-libmikmodtest \
+"
+
+do_configure_append() {
+ find ${S} -name Makefile | xargs sed -i s:'-I/usr/include':'-I${STAGING_INCDIR}':g
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/mpd/mpd.init ${D}${sysconfdir}/init.d/mpd
+ install -m 644 ${WORKDIR}/mpd/mpd.conf ${D}${sysconfdir}/mpd.conf
+}
diff --git a/recipes/musicpd/mpd/fix-mod-support.patch b/recipes/musicpd/mpd/fix-mod-support.patch
new file mode 100644
index 0000000000..f9010abd9b
--- /dev/null
+++ b/recipes/musicpd/mpd/fix-mod-support.patch
@@ -0,0 +1,23 @@
+Index: mpd/src/inputPlugins/mod_plugin.c
+===================================================================
+--- mpd.orig/src/inputPlugins/mod_plugin.c
++++ mpd/src/inputPlugins/mod_plugin.c
+@@ -62,10 +62,16 @@ static MDRIVER drv_mpd = {
+ NULL,
+ "MPD",
+ "MPD Output Driver v0.1",
++
+ 0,
+ 255,
+- "mpd",
+- NULL,
++#if (LIBMIKMOD_VERSION > 0x030106)
++ "mpd", /* alias */
++ NULL, /* cmd help line*/
++#endif
++#if (LIBMIKMOD_VERSION >= 0x030200)
++ NULL, /*Command Line */
++#endif
+ mod_mpd_IsThere,
+ VC_SampleLoad,
+ VC_SampleUnload,
diff --git a/recipes/musicpd/mpd/mpd.conf b/recipes/musicpd/mpd/mpd.conf
new file mode 100644
index 0000000000..c336af95c4
--- /dev/null
+++ b/recipes/musicpd/mpd/mpd.conf
@@ -0,0 +1,338 @@
+# An example configuration file for MPD
+# See the mpd.conf man page for a more detailed description of each parameter.
+
+# Required files and directories ##############################################
+#
+# This setting controls the top directory which MPD will search to discover the
+# available audio files and add them to the daemon's online database.
+#
+#music_directory "~/music"
+music_directory "/media/content"
+#
+# This setting sets the MPD internal playlist directory. The purpose of this
+# directory is storage for playlists created by MPD. The server will use
+# playlist files not created by the server but only if they are in the MPD
+# format.
+#
+#playlist_directory "~/.mpd/playlists"
+playlist_directory "/var/lib/mpd/playlists"
+#
+# This setting sets the location of the MPD database. This file is used to
+# load the database at server start up and store the database while the
+# server is not up.
+#
+#db_file "~/.mpd/database"
+db_file "/var/lib/mpd/mpd.db"
+#
+# These settings are the locations for the daemon log files for the daemon.
+# These logs are great for troubleshooting, depending on your log_level
+# settings.
+#
+#log_file "~/.mpd/log"
+#error_file "~/.mpd/error-log"
+log_file "/var/lib/mpd/mpd.log"
+error_file "/var/lib/mpd/mpd.error"
+###############################################################################
+
+
+# Optional files ##############################################################
+#
+# This setting sets the location of the file which stores the process ID
+# for use of mpd --kill and some init scripts. This setting is disabled by
+# default.
+#
+#pid_file "~/.mpd/pid"
+pid_file "/var/lib/mpd/mpd.pid"
+# This setting sets the location of the file which contains information about
+# most variables to get MPD back into the same general shape it was in before
+# it was brought down. This setting is disabled by default.
+#
+#state_file "~/.mpd/state"
+state_file "/var/lib/mpd/mpdstate"
+#
+###############################################################################
+
+
+# General music daemon options ################################################
+#
+# This setting specifies the user that MPD will run as, if set. MPD should
+# never run as root and you may use this setting to make MPD change its user
+# id after initialization. Do not use this setting if you start MPD as an
+# unprivileged user. This setting is disabled by default, and the server will
+# run as root.
+#
+#user "nobody"
+#
+# This setting sets the address for the daemon to listen on. Careful attention
+# should be paid if this is assigned to anything other then the default, any.
+# This setting can deny access to control of the daemon.
+#
+# For network
+bind_to_address "any"
+#bind_to_address "127.0.0.1"
+#
+# And for Unix Socket
+#bind_to_address "~/.mpd/socket"
+#
+# This setting is the port that is desired for the daemon to get assigned to.
+#
+port "6600"
+#
+# This setting controls the type of information which is logged. Available
+# setting arguments are "default", "secure" or "verbose". The "verbose" setting
+# argument is recommended for troubleshooting, though can quickly stretch
+# available resources on limited hardware storage.
+#
+#log_level "default"
+#
+# If you have a problem with your MP3s ending abruptly it is recommended that
+# you set this argument to "no" to attempt to fix the problem. If this solves
+# the problem, it is highly recommended to fix the MP3 files with vbrfix
+# (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which
+# point gapless MP3 playback can be enabled.
+#
+#gapless_mp3_playback "yes"
+#
+# This setting enables MPD to create playlists in a format usable by other
+# music players.
+#
+#save_absolute_paths_in_playlists "no"
+#
+# This setting defines a list of tag types that will be extracted during the
+# audio file discovery process. Optionally, 'comment' can be added to this
+# list.
+#
+#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
+#
+###############################################################################
+
+# Symbolic link behavior ######################################################
+#
+# If this setting is set to "yes", MPD will discover audio files by following
+# symbolic links outside of the configured music_directory.
+#
+#follow_outside_symlinks "yes"
+#
+# If this setting is set to "yes, MPD will discover audio files by following
+# symbolic links inside of the configured music_directory.
+#
+#follow_inside_symlinks "yes"
+#
+###############################################################################
+
+# Zeroconf / Avahi Service Discovery ##########################################
+#
+# If this setting is set to "yes", service information will be published with
+# Zeroconf / Avahi.
+#
+#zeroconf_enabled "yes"
+#
+# The argument to this setting will be the Zeroconf / Avahi unique name for
+# this MPD server on the network.
+#
+#zeroconf_name "Music Player"
+#
+###############################################################################
+
+
+# Permissions #################################################################
+#
+# If this setting is set, MPD will require password authorization. The password
+# can setting can be specified multiple times for different password profiles.
+#
+#password "password@read,add,control,admin"
+#
+# This setting specifies the permissions a user has who has not yet logged in.
+#
+#default_permissions "read,add,control,admin"
+#
+###############################################################################
+
+
+# Audio Output ################################################################
+#
+# MPD supports various audio output types, as well as playing through multiple
+# audio outputs at the same time, through multiple audio_output settings
+# blocks. Setting this block is optional, though the server will only attempt
+# autodetection for one sound card.
+#
+# See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of
+# other audio outputs.
+#
+# An example of an ALSA output:
+#
+#audio_output {
+# type "alsa"
+# name "My ALSA Device"
+# device "hw:0,0" # optional
+# format "44100:16:2" # optional
+#}
+#
+# An example of an OSS output:
+#
+#audio_output {
+# type "oss"
+# name "My OSS Device"
+# device "/dev/dsp" # optional
+# format "44100:16:2" # optional
+#}
+#
+# An example of a shout output (for streaming to Icecast):
+#
+#audio_output {
+# type "shout"
+# encoding "ogg" # optional
+# name "My Shout Stream"
+# host "localhost"
+# port "8000"
+# mount "/mpd.ogg"
+# password "hackme"
+# quality "5.0"
+# bitrate "128"
+# format "44100:16:1"
+# protocol "icecast2" # optional
+# user "source" # optional
+# description "My Stream Description" # optional
+# genre "jazz" # optional
+# public "no" # optional
+# timeout "2" # optional
+#}
+#
+# An example of a pulseaudio output (streaming to a remote pulseaudio server)
+#
+#audio_output {
+# type "pulse"
+# name "My Pulse Output"
+# server "remote_server"
+# sink "remote_server_sink"
+#}
+#
+## An example of a null output (for no audio output):
+#
+#audio_output {
+# type "null"
+# name "My Null Output"
+#}
+#
+# This setting will change all decoded audio to be converted to the specified
+# format before being passed to the audio outputs. By default, this setting is
+# disabled.
+#
+#audio_output_format "44100:16:2"
+#
+# If MPD has been compiled with libsamplerate support, this setting specifies
+# the sample rate converter to use. Possible values can be found in the
+# mpd.conf man page or the libsamplerate documentation. By default, this is
+# setting is disabled.
+#
+#samplerate_converter "Fastest Sinc Interpolator"
+#
+###############################################################################
+
+
+# Volume control mixer ########################################################
+#
+# MPD has limited volume controls, to use them pick one below. If one is not
+# specified it may be autodetected at startup, depending on the dependencies
+# which were compiled into the server.
+#
+# An example for controlling an ALSA mixer:
+#
+mixer_type "alsa"
+mixer_device "default"
+mixer_control "PCM"
+#
+# An example for controlling an OSS mixer:
+#
+#mixer_type "oss"
+#mixer_device "/dev/mixer"
+#mixer_control "PCM"
+#
+# This example is a general volume control mixer, it is used to adjust the
+# volume of the audio sent to the audio output, and will work with all outputs.
+#
+#mixer_type "software"
+#
+###############################################################################
+
+
+# Normalization automatic volume adjustments ##################################
+#
+# This setting specifies the type of ReplayGain to use. This setting can have
+# the argument "album" or "track". See <http://www.replaygain.org> for more
+# details. By default this setting is disabled.
+#
+#replaygain "album"
+#
+# This setting sets the pre-amp used for files that have ReplayGain tags. By
+# default this setting is disabled.
+#
+#replaygain_preamp "0"
+#
+# This setting enables on-the-fly normalization volume adjustment. This will
+# result in the volume of all playing audio to be adjusted so the output has
+# equal "loudness".
+#
+#volume_normalization "no"
+#
+###############################################################################
+
+
+# MPD Internal Buffering ######################################################
+#
+# This setting adjusts the size of internal decoded audio buffering. Changing
+# this may have undesired effects. Don't change this if you don't know what you
+# are doing.
+#
+#audio_buffer_size "2048"
+#
+# This setting controls the percentage of the buffer which is filled before
+# beginning to play. Increasing this reduces the chance of audio file skipping,
+# at the cost of increased time prior to audio playback.
+#
+#buffer_before_play "10%"
+#
+###############################################################################
+
+
+# HTTP Streaming Proxy ########################################################
+#
+# This setting specifies the HTTP proxy to use for playing HTTP streams. By
+# default, these settings will be disabled.
+#
+#http_proxy_host "proxy.isp.com"
+#http_proxy_port "8080"
+#http_proxy_user "user"
+#http_proxy_password "password"
+#
+###############################################################################
+
+
+# Resource Limitations ########################################################
+#
+# These settings are various limitations to prevent MPD from using too many
+# resources. Generally, these settings should be minimized to prevent security
+# risks, depending on the operating resources.
+#
+#connection_timeout "60"
+#max_connections "10"
+#max_playlist_length "16384"
+#max_command_list_size "2048"
+#max_output_buffer_size "8192"
+#
+###############################################################################
+
+
+# Character Encoding ##########################################################
+#
+# If file or directory names do not display correctly for your locale then you
+# may need to modify this setting. After modification of this setting mpd
+# --create-db must be run to change the database.
+#
+filesystem_charset "UTF-8"
+#
+# This setting controls the encoding that ID3v1 tags should be converted from.
+#
+#id3v1_encoding "ISO-8859-1"
+#
+###############################################################################
diff --git a/recipes/musicpd/mpd/mpd.init b/recipes/musicpd/mpd/mpd.init
new file mode 100644
index 0000000000..98a75d0af7
--- /dev/null
+++ b/recipes/musicpd/mpd/mpd.init
@@ -0,0 +1,32 @@
+#! /bin/sh
+#
+# > update-rc.d mpd defaults 20
+#
+
+test -f /usr/bin/mpd || exit 0
+test -f /etc/mpd.conf || exit 0
+
+case "$1" in
+ start)
+ echo -n "Starting music player daemon: mpd"
+ start-stop-daemon --start --quiet --exec /usr/bin/mpd
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping music player daemon: mpd"
+ start-stop-daemon --stop --quiet --exec /usr/bin/mpd
+ echo "."
+ ;;
+ restart|force-reload)
+ echo -n "Restarting music player daemon: mpd"
+ start-stop-daemon --start --quiet --exec /usr/bin/mpd
+ sleep 2
+ start-stop-daemon --stop --quiet --exec /usr/bin/mpd
+ echo "."
+ ;;
+ *)
+ echo "Usage: /etc/init.d/mpd {start|stop|restart|force-reload}"
+ exit 1
+esac
+
+exit 0
diff --git a/recipes/musicpd/mpd/save-volume-state.patch b/recipes/musicpd/mpd/save-volume-state.patch
new file mode 100644
index 0000000000..3e9be0eafb
--- /dev/null
+++ b/recipes/musicpd/mpd/save-volume-state.patch
@@ -0,0 +1,31 @@
+diff -Nur mpd-0.11.5~/src/playlist.c mpd-0.11.5/src/playlist.c
+--- mpd-0.11.5~/src/playlist.c 2005-08-31 17:11:14.000000000 -0700
++++ mpd-0.11.5/src/playlist.c 2005-08-31 17:14:36.000000000 -0700
+@@ -49,6 +49,7 @@
+ #define PLAYLIST_STATE_FILE_CURRENT "current: "
+ #define PLAYLIST_STATE_FILE_TIME "time: "
+ #define PLAYLIST_STATE_FILE_CROSSFADE "crossfade: "
++#define PLAYLIST_STATE_FILE_VOLUME "volume: "
+ #define PLAYLIST_STATE_FILE_PLAYLIST_BEGIN "playlist_begin"
+ #define PLAYLIST_STATE_FILE_PLAYLIST_END "playlist_end"
+
+@@ -275,6 +276,8 @@
+ myfprintf(fp,"%s\n",PLAYLIST_STATE_FILE_STATE_STOP);
+ break;
+ }
++ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_VOLUME,
++ getVolumeLevel());
+ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_RANDOM,
+ playlist.random);
+ myfprintf(fp,"%s%i\n",PLAYLIST_STATE_FILE_REPEAT,
+@@ -403,6 +406,10 @@
+ current = atoi(&(buffer
+ [strlen(PLAYLIST_STATE_FILE_CURRENT)]));
+ }
++ else if(strncmp(buffer,PLAYLIST_STATE_FILE_VOLUME,
++ strlen(PLAYLIST_STATE_FILE_VOLUME)) == 0) {
++ changeVolumeLevel(1, atoi(&(buffer[strlen(PLAYLIST_STATE_FILE_VOLUME)])), 0);
++ }
+ else if(strncmp(buffer,
+ PLAYLIST_STATE_FILE_PLAYLIST_BEGIN,
+ strlen(PLAYLIST_STATE_FILE_PLAYLIST_BEGIN)
diff --git a/recipes/musicpd/mpd_0.14.2.bb b/recipes/musicpd/mpd_0.14.2.bb
new file mode 100644
index 0000000000..8aed178af2
--- /dev/null
+++ b/recipes/musicpd/mpd_0.14.2.bb
@@ -0,0 +1,44 @@
+DESCRIPTION = "Music Player Daemon (mpd)"
+HOMEPAGE = "http://www.musicpd.org"
+SECTION = "console/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "libvorbis libogg libao zlib libmikmod flac audiofile virtual/libiconv faad2 pulseaudio \
+ ${@base_conditional('ENTERPRISE_DISTRO', '1', '', 'libmad libid3tag', d)}"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/mpd-${PV}.tar.bz2 \
+ file://mpd/mpd.conf \
+ file://mpd/mpd.init"
+
+PR = "r3"
+
+inherit autotools update-rc.d
+INITSCRIPT_NAME = "mpd"
+
+# Setting --enable-mpd-{mad,id3tag} causes local caches of the libraries to
+# be built, instead we use the OE built versions which should be installed
+# in staging - remove the --with and replace with --enable to use the local
+# versions.
+
+EXTRA_OECONF = "\
+ --enable-ogg \
+ --with-id3tag-libraries=${STAGING_LIBDIR} \
+ --with-id3tag-includes=${STAGING_INCDIR} \
+ --with-mad-libraries=${STAGING_LIBDIR} \
+ --with-mad-includes=${STAGING_INCDIR} \
+ --with-faad-libraries=${STAGING_LIBDIR} \
+ --with-faad-includes=${STAGING_INCDIR} \
+ --disable-jack \
+ --enable-pulse \
+ --enable-mod \
+ --disable-oggflac"
+
+do_compile_prepend() {
+ find -name Makefile | xargs sed -i 's~-I/usr/include~-I${STAGING_INCDIR}~g'
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/mpd/mpd.init ${D}${sysconfdir}/init.d/mpd
+ install -m 644 ${WORKDIR}/mpd/mpd.conf ${D}${sysconfdir}/mpd.conf
+}
+
diff --git a/recipes/musicpd/ncmpc_0.11.1.bb b/recipes/musicpd/ncmpc_0.11.1.bb
new file mode 100644
index 0000000000..32195ccb9d
--- /dev/null
+++ b/recipes/musicpd/ncmpc_0.11.1.bb
@@ -0,0 +1,9 @@
+DESCRIPTION = "Ncurses based Music Player Daemon (mpd) Client"
+HOMEPAGE = "http://www.musicpd.org/ncmpc.shtml"
+SECTION = "console/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "ncurses glib-2.0"
+
+SRC_URI = "http://mercury.chem.pitt.edu/~shank/ncmpc-${PV}.tar.gz"
+
+inherit autotools
diff --git a/recipes/musicpd/py-libmpdclient_0.10.0.bb b/recipes/musicpd/py-libmpdclient_0.10.0.bb
new file mode 100644
index 0000000000..92423f0c88
--- /dev/null
+++ b/recipes/musicpd/py-libmpdclient_0.10.0.bb
@@ -0,0 +1,9 @@
+DESCRIPTION = "Python library for Music Player Daemon (mpd)"
+HOMEPAGE = "http://www.musicpd.org/py-libmpdclient.shtml"
+SECTION = "libs/multimedia"
+LICENSE = "GPLv2"
+DEPENDS = "libmpd python"
+
+SRC_URI = "http://mercury.chem.pitt.edu/~shank/py-libmpdclient-${PV}.tar.gz"
+
+inherit distutils