diff options
Diffstat (limited to 'media-sound/mserv/mserv-0.35-r1.ebuild')
-rw-r--r-- | media-sound/mserv/mserv-0.35-r1.ebuild | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/media-sound/mserv/mserv-0.35-r1.ebuild b/media-sound/mserv/mserv-0.35-r1.ebuild new file mode 100644 index 000000000000..6cb62d29c324 --- /dev/null +++ b/media-sound/mserv/mserv-0.35-r1.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit depend.apache webapp eutils toolchain-funcs user + +DESCRIPTION="Jukebox-style music server" +HOMEPAGE="http://www.mserv.org" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" +LICENSE="mserv" + +KEYWORDS="amd64 ~ppc sparc x86" +IUSE="vorbis" + +WEBAPP_MANUAL_SLOT="yes" +SLOT="0" + +RDEPEND=">=dev-lang/perl-5.6.1 + media-sound/mpg123 + media-sound/sox + vorbis? ( media-sound/vorbis-tools )" +DEPEND="" + +need_apache + +pkg_setup() { + webapp_pkg_setup + enewgroup mserv + enewuser mserv -1 -1 /dev/null mserv,audio +} + +src_unpack() { + unpack ${A} + cd "${S}" + + # Adjust paths to match Gentoo + epatch "${FILESDIR}"/${P}-paths.patch + # Mservplay uses stricmp - should be strcasecmp + epatch "${FILESDIR}"/${P}-mservplay.patch +} + +src_compile() { + econf + emake || die "emake failed" + + # Optional suid wrapper + cd "${S}"/support + $(tc-getCC) -I.. -I../mserv ${CFLAGS} ${LDFLAGS} mservplay.c -o mservplay || die +} + +src_install() { + webapp_src_preinst + + emake DESTDIR="${D}" install || die "emake install failed" + + dobin support/mservedit support/mservripcd support/mservplay + dodoc AUTHORS ChangeLog docs/quick-start.txt + + # Web client + dodir ${MY_CGIBINDIR}/${PN} + cp webclient/*.cgi "${D}"/${MY_CGIBINDIR}/${PN} + cp webclient/*.gif webclient/index.html "${D}"/${MY_HTDOCSDIR} + + webapp_src_install + + # Configuration files + insopts -o mserv -g mserv -m0644 + insinto /etc/mserv + fowners mserv:mserv /etc/mserv + newins "${FILESDIR}"/${P}-config config + newins "${FILESDIR}"/${P}-webacl webacl + newins "${FILESDIR}"/${P}-acl acl + insinto ${MY_HOSTROOTDIR}/${PN} + fowners mserv:mserv ${MY_HOSTROOTDIR}/${PN} + newins "${FILESDIR}"/${P}-config config + newins "${FILESDIR}"/${P}-webacl webacl + newins "${FILESDIR}"/${P}-acl acl + fperms 0600 ${MY_HOSTROOTDIR}/${PN}/acl + + newinitd "${FILESDIR}"/${P}-initd ${PN} + newconfd "${FILESDIR}"/${P}-confd ${PN} + + # Log file + dodir /var/log + touch "${D}"var/log/mserv.log + fowners mserv:mserv /var/log/mserv.log + + # Track and album info + keepdir /var/lib/mserv/trackinfo + fowners mserv:mserv /var/lib/mserv/trackinfo + + # Current track output + dodir /var/spool/mserv + touch "${D}"var/spool/mserv/player.out + fowners mserv:mserv /var/spool/mserv /var/spool/mserv/player.out +} + +pkg_postinst() { + elog + elog "The wrapper program 'mservplay' is disabled for" + elog "security reasons. If you wish to use mservplay" + elog "to pass a 'nice' value to mpg123, you must make" + elog "/usr/bin/mservplay suid root." + ewarn + ewarn "Please edit /etc/mserv/config and set path_tracks" + ewarn "to the location of your music files." + webapp_pkg_postinst +} |