summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorPav Lucistnik <pav@FreeBSD.org>2009-12-06 17:30:53 +0000
committerPav Lucistnik <pav@FreeBSD.org>2009-12-06 17:30:53 +0000
commitfa6a54b823af57fe2da52e8d0d863507e77a7247 (patch)
tree026521da20f752a246a3b1c60de341175f738604 /audio
parent- Reserve UID/GID 137 for audio/musicpd (diff)
- Use static UID/GID and convert to USERS macro
- Install useful sample configuration PR: ports/133533 Submitted by: Ashish SHUKLA <wahjava@gmail.com> Approved by: Jan-Olof Lindqvist <jo.lindqvist@gmail.com> (maintainer)
Notes
Notes: svn path=/head/; revision=245293
Diffstat (limited to 'audio')
-rw-r--r--audio/musicpd/Makefile29
-rw-r--r--audio/musicpd/files/musicpd.in7
-rw-r--r--audio/musicpd/files/patch-doc_mpdconf.example93
-rw-r--r--audio/musicpd/files/pkg-message.in3
-rw-r--r--audio/musicpd/pkg-plist2
5 files changed, 130 insertions, 4 deletions
diff --git a/audio/musicpd/Makefile b/audio/musicpd/Makefile
index c2c2b223636c..858ffa20ffa2 100644
--- a/audio/musicpd/Makefile
+++ b/audio/musicpd/Makefile
@@ -7,7 +7,7 @@
PORTNAME= musicpd
PORTVERSION= 0.15
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= audio ipv6
MASTER_SITES= SF/${PORTNAME}/mpd/${PORTVERSION}
DISTNAME= mpd-${PORTVERSION}
@@ -37,8 +37,6 @@ PORTDOCS= mpdconf.example AUTHORS README COPYING NEWS UPGRADING
SUB_FILES= pkg-message
-PLIST_FILES= bin/mpd
-
OPTIONS= ID3TAG "Support ID3 v1/v2 tags" on \
IPV6 "Support IPv6 protocol" on \
FLAC "Support FLAC audio format" on \
@@ -61,6 +59,25 @@ OPTIONS= ID3TAG "Support ID3 v1/v2 tags" on \
HTTPD "Support for httpd output streaming" off \
SAMPLERATE "Support sample rate conversion" off
+MPDDIR= var/mpd
+MPDUSER= mpd
+MPDGROUP= mpd
+
+USERS= ${MPDUSER}
+GROUPS= ${MPDGROUP}
+
+MPDUID= 137
+MPDGID= 137
+
+PLIST_SUB= MPDUSER=${MPDUSER} \
+ MPDGROUP=${MPDGROUP}
+
+SUB_LIST+= MPDUSER=${MPDUSER} \
+ MPDGROUP=${MPDGROUP} \
+ MPDDIR=${PREFIX}/${MPDDIR} \
+ MPDUID=${MPDUID} \
+ MPDGID=${MPDGID}
+
.include <bsd.port.pre.mk>
.if defined(WITHOUT_FLAC)
@@ -201,13 +218,17 @@ LIB_DEPENDS+= samplerate.1:${PORTSDIR}/audio/libsamplerate
CONFIGURE_ARGS+=--enable-lsr
.endif
-.if defined(NOPORTDOCS)
post-patch:
+ @${REINPLACE_CMD} -e "s/%%MPDDIR%%/${PREFIX:C/\//\\\//g}\/${MPDDIR:C/\//\\\//g}/g" -e "s/%%MPDUSER%%/${MPDUSER}/g" \
+ ${WRKSRC}/doc/mpdconf.example
+.if defined(NOPORTDOCS)
@${REINPLACE_CMD} -e 's|install-docDATA ||' \
${WRKSRC}/Makefile.in
.endif
post-install:
+ @${MKDIR} ${PREFIX}/${MPDDIR}
+ @${CHOWN} -R ${MPDUSER}:${MPDGROUP} ${PREFIX}/${MPDDIR}
@${ECHO_MSG}
@${CAT} ${PKGMESSAGE}
@${ECHO_MSG}
diff --git a/audio/musicpd/files/musicpd.in b/audio/musicpd/files/musicpd.in
index 66684f6f3eb4..a78bbb7f6316 100644
--- a/audio/musicpd/files/musicpd.in
+++ b/audio/musicpd/files/musicpd.in
@@ -13,11 +13,18 @@
name=musicpd
rcvar=`set_rcvar`
+stop_cmd="${name}_stop"
config=%%PREFIX%%/etc/mpd.conf
command=%%PREFIX%%/bin/mpd
required_files=$config
+musicpd_stop()
+{
+ echo -n "Stopping musicpd: ";
+ ${command} --kill ${config} && echo "stopped.";
+}
+
load_rc_config $name
: ${musicpd_enable="NO"}
diff --git a/audio/musicpd/files/patch-doc_mpdconf.example b/audio/musicpd/files/patch-doc_mpdconf.example
new file mode 100644
index 000000000000..1c81be395c1d
--- /dev/null
+++ b/audio/musicpd/files/patch-doc_mpdconf.example
@@ -0,0 +1,93 @@
+
+$FreeBSD$
+
+--- doc/mpdconf.example.orig
++++ doc/mpdconf.example
+@@ -10,14 +10,14 @@
+ # be disabled and audio files will only be accepted over ipc socket (using
+ # file:// protocol) or streaming files over an accepted protocol.
+ #
+-#music_directory "~/music"
++music_directory "%%MPDDIR%%/music"
+ #
+ # 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. This setting defaults to playlist saving being disabled.
+ #
+-#playlist_directory "~/.mpd/playlists"
++playlist_directory "%%MPDDIR%%/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
+@@ -25,7 +25,7 @@
+ # MPD to accept files over ipc socket (using file:// protocol) or streaming
+ # files over an accepted protocol.
+ #
+-#db_file "~/.mpd/database"
++db_file "%%MPDDIR%%/database"
+ #
+ # These settings are the locations for the daemon log files for the daemon.
+ # These logs are great for troubleshooting, depending on your log_level
+@@ -34,20 +34,21 @@
+ # The special value "syslog" makes MPD use the local syslog daemon. This
+ # setting defaults to logging to syslog, otherwise logging is disabled.
+ #
+-#log_file "~/.mpd/log"
++log_file "%%MPDDIR%%/log"
++error_file "%%MPDDIR%%/error-log"
+ #
+ # 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 and the pid file will not be stored.
+ #
+-#pid_file "~/.mpd/pid"
++pid_file "%%MPDDIR%%/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 and the server
+ # state will be reset on server start up.
+ #
+-#state_file "~/.mpd/state"
++state_file "%%MPDDIR%%/state"
+ #
+ ###############################################################################
+
+@@ -59,7 +60,7 @@
+ # initialization. This setting is disabled by default and MPD is run as the
+ # current user.
+ #
+-#user "nobody"
++user "mpd"
+ #
+ # 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.
+@@ -69,7 +70,7 @@
+ #bind_to_address "any"
+ #
+ # And for Unix Socket
+-#bind_to_address "~/.mpd/socket"
++#bind_to_address "%%MPDDIR%%/socket"
+ #
+ # This setting is the TCP port that is desired for the daemon to get assigned
+ # to.
+@@ -172,18 +173,6 @@
+ # 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
+-# mixer_device "default" # optional
+-# mixer_control "PCM" # optional
+-# mixer_index "0" # optional
+-#}
+-#
+ # An example of an OSS output:
+ #
+ #audio_output {
diff --git a/audio/musicpd/files/pkg-message.in b/audio/musicpd/files/pkg-message.in
index 45cba9ff8b29..44f907854b5e 100644
--- a/audio/musicpd/files/pkg-message.in
+++ b/audio/musicpd/files/pkg-message.in
@@ -17,6 +17,9 @@ Then start the server with
or reboot.
+The example configuration of MPD server requires music files to
+be stored at %%MPDDIR%%/music .
+
NOTE: The musicpd server is pretty useless without a client.
You might want to install one of the following ports too:
mpc, ncmpc, glurp, gmpc, kmp, or phpmp.
diff --git a/audio/musicpd/pkg-plist b/audio/musicpd/pkg-plist
new file mode 100644
index 000000000000..eead1b0ad098
--- /dev/null
+++ b/audio/musicpd/pkg-plist
@@ -0,0 +1,2 @@
+bin/mpd
+@dirrmtry var/mpd