summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2004-12-31 00:17:05 +0000
committerBrooks Davis <brooks@FreeBSD.org>2004-12-31 00:17:05 +0000
commitf13dcde71c6016d1e015deb7cd9dd34d4209c54f (patch)
tree48b8ac12c0bfe3b43fbcb24e21b1acd4b809b5d3 /audio
parentRemove USE_X_PREFIX=no and set PREFIX?=${LOCALBASE} explicitly, since we (diff)
Various enhancements and fixes for slimserver:
- Use a new system to track which files in the CPAN directory should be installed. As a side effect, generate most of the RUN_DEPENDS list at runtime. - Add a script to start softsqueeze. The javavm port and a Jave VM must be installed to the script to actually work. A dependency was not added at this point because that's a huge barrier. - Fix a bug in EXCEPTFILES processing. - Patch the configuration parsing code to default the cache and playlist directories to locations under /var/db/slimserver instead of the weird defaults. This will fix the cache on new installs. [0] - Bump port revision. Reported by: Kraig Vander Berg <kraig at woodshoes dot net> [0]
Notes
Notes: svn path=/head/; revision=125578
Diffstat (limited to 'audio')
-rw-r--r--audio/slimserver/Makefile84
-rw-r--r--audio/slimserver/files/CPANfiles304
-rw-r--r--audio/slimserver/files/patch-Slim_Utils_Prefs.pm24
-rw-r--r--audio/slimserver/files/pm2port41
-rw-r--r--audio/slimserver/files/softsqueeze.sh10
-rw-r--r--audio/slimserver/files/softsqueeze.sh.in10
-rw-r--r--audio/slimserver/pkg-install5
-rw-r--r--audio/squeezeboxserver/Makefile84
-rw-r--r--audio/squeezeboxserver/files/CPANfiles304
-rw-r--r--audio/squeezeboxserver/files/patch-Slim_Utils_Prefs.pm24
-rw-r--r--audio/squeezeboxserver/files/pm2port41
-rw-r--r--audio/squeezeboxserver/files/softsqueeze.sh10
-rw-r--r--audio/squeezeboxserver/files/softsqueeze.sh.in10
-rw-r--r--audio/squeezeboxserver/pkg-install5
-rw-r--r--audio/squeezecenter/Makefile84
-rw-r--r--audio/squeezecenter/files/CPANfiles304
-rw-r--r--audio/squeezecenter/files/patch-Slim_Utils_Prefs.pm24
-rw-r--r--audio/squeezecenter/files/pm2port41
-rw-r--r--audio/squeezecenter/files/softsqueeze.sh10
-rw-r--r--audio/squeezecenter/files/softsqueeze.sh.in10
-rw-r--r--audio/squeezecenter/pkg-install5
21 files changed, 1281 insertions, 153 deletions
diff --git a/audio/slimserver/Makefile b/audio/slimserver/Makefile
index a277e9af497d..b04d2d204202 100644
--- a/audio/slimserver/Makefile
+++ b/audio/slimserver/Makefile
@@ -7,6 +7,7 @@
PORTNAME= slimserver
PORTVERSION?= 5.4.0
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= http://www.slimdevices.com/downloads/${NIGHTLY}SlimServer_v${DISTVERSION}/
DISTNAME= SlimServer_v${DISTVERSION}
@@ -16,31 +17,18 @@ COMMENT= Slim Devices audio streaming server
DISTVERSION?= ${PORTVERSION}
-RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder \
- ${SITE_PERL}/Audio/Wav.pm:${PORTSDIR}/audio/p5-Audio-Wav \
- ${SITE_PERL}/Audio/WMA.pm:${PORTSDIR}/audio/p5-Audio-WMA \
- ${SITE_PERL}/MP3/Info.pm:${PORTSDIR}/audio/p5-MP3-Info \
- ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 \
- ${SITE_PERL}/Data/Page.pm:${PORTSDIR}/databases/p5-Data-Page \
- ${SITE_PERL}/DBIx/ContextualFetch.pm:${PORTSDIR}/databases/p5-DBIx-ContextualFetch \
- ${SITE_PERL}/Ima/DBI.pm:${PORTSDIR}/databases/p5-Ima-DBI \
- ${SITE_PERL}/SQL/Abstract.pm:${PORTSDIR}/databases/p5-SQL-Abstract \
- ${SITE_PERL}/SQL/Statement.pm:${PORTSDIR}/databases/p5-SQL-Statement \
- ${SITE_PERL}/Class/Accessor.pm:${PORTSDIR}/devel/p5-Class-Accessor \
- ${SITE_PERL}/File/Spec.pm:${PORTSDIR}/devel/p5-File-Spec \
- ${SITE_PERL}/IO/String.pm:${PORTSDIR}/devel/p5-IO-String \
- ${SITE_PERL}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \
- ${SITE_PERL}/UNIVERSAL/moniker.pm:${PORTSDIR}/devel/p5-UNIVERSAL-moniker \
- ${SITE_PERL}/${PERL_ARCH}/Net/DNS.pm:${PORTSDIR}/dns/p5-Net-DNS \
- ${SITE_PERL}/File/Which.pm:${PORTSDIR}/sysutils/p5-File-Which \
- ${SITE_PERL}/XML/NamespaceSupport.pm:${PORTSDIR}/textproc/p5-XML-NamespaceSupport \
- ${SITE_PERL}/XML/SAX.pm:${PORTSDIR}/textproc/p5-XML-SAX \
- ${SITE_PERL}/XML/Simple.pm:${PORTSDIR}/textproc/p5-XML-Simple \
- ${SITE_PERL}/LWP.pm:${PORTSDIR}/www/p5-libwww \
- ${SITE_PERL}/${PERL_ARCH}/Template.pm:${PORTSDIR}/www/p5-Template-Toolkit
+
+RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder
.include <bsd.port.pre.mk>
+SLIM_CPAN_DEPS!= cut -f 2 -d, ${FILESDIR}/pm2port | grep -v ^_builtin
+RUN_DEPENDS+= ${SLIM_CPAN_DEPS:S|^|${SITE_PERL}/|:S|:|:${PORTSDIR}/|}
+
+.if ${PERL_LEVEL} < 500800
+IGNORE= "Perl 5.8 or newer required. Install lang/perl5.8 and try again."
+.endif
+
.if ${OSVERSION} < 502110
RUN_DEPENDS+= ${LOCALBASE}/bin/pgrep:${PORTSDIR}/sysutils/pkill
PGREPBASE= ${LOCALBASE}
@@ -53,34 +41,17 @@ TMP_SLIMDIR= ${WRKDIR}/slimserver
TMP_DOCSDIR= ${WRKDIR}/doc
DOCFILES= Changelog.html Installation.txt
EXCEPTFILES= ${DOCFILES} \
- CPAN/Audio/WMA.pm
+ CPAN/File/.exists \
+ CPAN/MP3/.exists
EXCEPTDIRS= Bin \
- CPAN/arch \
- CPAN/Audio/Wav \
- CPAN/Bundle \
- CPAN/Class \
- CPAN/Data \
- CPAN/DBIx \
- CPAN/File \
- CPAN/HTML \
- CPAN/HTTP \
- CPAN/Ima \
- CPAN/IO \
- CPAN/LWP \
- CPAN/MIME \
- CPAN/MP3 \
- CPAN/Net \
- CPAN/SQL \
- CPAN/Template \
- CPAN/Universal \
- CPAN/URI \
- CPAN/XML
+ CPAN/arch
CPIOARGS= --quiet -pdum -R
PLIST= ${WRKDIR}/pkg-plist
PLIST_SUB= SLIMDIR=${SLIMDIR}
-SED_SCRIPT+= -e 's,%%PREFIX%%,${PREFIX},g' \
+SED_SCRIPT+= -e 's,%%LOCALBASE%%,${LOCALBASE},g' \
+ -e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%PGREPBASE%%,${PGREPBASE},g' \
-e 's,%%RC_SUBR%%,${RC_SUBR},g' \
-e 's,%%SLIMDIR%%,${SLIMDIR},g'
@@ -94,23 +65,36 @@ pre-fetch:
post-patch:
@${SED} ${SED_SCRIPT} <${FILESDIR}/slimserver.sh >${WRKDIR}/slimserver.sh
+ @${SED} ${SED_SCRIPT} <${FILESDIR}/softsqueeze.sh >${WRKDIR}/softsqueeze.sh
SLIMDIR?= slimserver
-pre-install:
- @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-
do-build:
@${MKDIR} -m 0755 ${TMP_SLIMDIR}
@cd ${WRKSRC} && \
- ${FIND} . -name \*.orig ${EXCEPTFILES:S/^/-o -name /} \
+ ${FIND} . -name \*.orig ${EXCEPTFILES:S|^|-o -path ./|} \
${EXCEPTDIRS:S/$/\*/:S/^/-o -path .\//} -o -print | \
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${TMP_SLIMDIR}
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for pm in `egrep -v ,$$ ${FILESDIR}/pm2port | cut -f 1 -d,`; do \
+ grep "$${pm}:" ${FILESDIR}/CPANfiles | cut -f2 -d: | xargs rm; \
+ done
+ @find ${TMP_SLIMDIR}/CPAN -depth -type d -empty -delete
+.if defined(PORTDEV)
+ @echo "Checking for unexpected files in CPAN"
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for file in `find . -type f | sed -e 's|^\./||'`; do \
+ egrep -q ":$${file}\$$" ${FILESDIR}/CPANfiles || \
+ echo $${file} ; \
+ done
+ @echo
+.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${TMP_DOCSDIR}
@cd ${WRKSRC} && ${INSTALL_DATA} ${DOCFILES} ${TMP_DOCSDIR}
.endif
@${ECHO} "etc/rc.d/slimserver${PKGNAMESUFFIX}.sh" > ${PLIST}
+ @${ECHO} "bin/softsqueeze" >> ${PLIST}
.if !defined(NOPORTDOCS)
@${FIND} ${TMP_DOCSDIR} -type f | \
${SED} -e 's|${TMP_DOCSDIR}|%%DOCSDIR%%|' | \
@@ -130,6 +114,9 @@ do-build:
.endif
@${ECHO} '@unexec rmdir /var/db/slimserver 2>/dev/null || (echo "Configuration information saved. If you will *NOT* use this package anymore," && echo "please remove /var/db/slimserver and its contents manually.")' >> ${PLIST}
+pre-install:
+ @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
+
do-install:
@${MKDIR} -m 0755 ${PREFIX}/${SLIMDIR}
@${LN} -s /var/db/slimserver/cache ${PREFIX}/${SLIMDIR}/Cache
@@ -138,6 +125,7 @@ do-install:
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${PREFIX}/${SLIMDIR}
@${INSTALL_SCRIPT} ${WRKDIR}/slimserver.sh \
${PREFIX}/etc/rc.d/slimserver${PKGNAMESUFFIX}.sh
+ @${INSTALL_SCRIPT} ${WRKDIR}/softsqueeze.sh ${PREFIX}/bin/softsqueeze
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@cd ${TMP_DOCSDIR} && \
diff --git a/audio/slimserver/files/CPANfiles b/audio/slimserver/files/CPANfiles
new file mode 100644
index 000000000000..a902f8c8e743
--- /dev/null
+++ b/audio/slimserver/files/CPANfiles
@@ -0,0 +1,304 @@
+Audio-Musepack:Audio/APETags.pm
+Audio-Musepack:Audio/Musepack.pm
+Audio-WMA:Audio/WMA.pm
+Audio-Wav:Audio/Wav.pm
+Audio-Wav:Audio/Wav/Changes
+Audio-Wav:Audio/Wav/MANIFEST
+Audio-Wav:Audio/Wav/Makefile.PL
+Audio-Wav:Audio/Wav/README
+Audio-Wav:Audio/Wav/Read.pm
+Audio-Wav:Audio/Wav/Tools.pm
+Audio-Wav:Audio/Wav/Write.pm
+Audio-Wav:Audio/Wav/Write/Header.pm
+Audio-Wav:Audio/Wav/test.pl
+Audio-Wav:Audio/Wav/test_tone.wav
+Class-Accessor-Chained:Class/Accessor/Chained.pm
+Class-Accessor-Chained:Class/Accessor/Chained/Fast.pm
+Class-Accessor:Class/Accessor.pm
+Class-Accessor:Class/Accessor/Fast.pm
+Class-DBI-AbstractSearch:Class/DBI/AbstractSearch.pm
+Class-DBI-Cacheable:Class/DBI/Cacheable.pm
+Class-DBI-Cacheable:Class/DBI/ObjectCache.pm
+Class-DBI-Pager:Class/DBI/Pager.pm
+Class-DBI-Plugin-AbstractCount:Class/DBI/Plugin/AbstractCount.pm
+Class-DBI-Plugin-CountSearch:Class/DBI/Plugin/CountSearch.pm
+Class-DBI-Plugin-RetrieveAll:Class/DBI/Plugin/RetrieveAll.pm
+Class-DBI-Plugin:Class/DBI/Plugin.pm
+Class-DBI:Class/DBI.pm
+Class-DBI:Class/DBI/Column.pm
+Class-DBI:Class/DBI/ColumnGrouper.pm
+Class-DBI:Class/DBI/Iterator.pm
+Class-DBI:Class/DBI/Query.pm
+Class-Data-Inheritable:Class/Data/Inheritable.pm
+Class-Trigger:Class/Trigger.pm
+Class-WhiteHole:Class/WhiteHole.pm
+DBIx-ContextualFetch:DBIx/ContextualFetch.pm
+Date-Page:Data/Page.pm
+File-Spec:File/Spec.pm
+File-Spec:File/Spec/Functions.pm
+File-Spec:File/Spec/Mac.pm
+File-Spec:File/Spec/OS2.pm
+File-Spec:File/Spec/Unix.pm
+File-Spec:File/Spec/VMS.pm
+File-Spec:File/Spec/Win32.pm
+File-Temp:File/Temp.pm
+File-Which:File/Which.pm
+HTML-Parser:HTML/Entities.pm
+IO-String:IO/String.pm
+Ima-DBI:Ima/DBI.pm
+LWP:Bundle/LWP.pm
+LWP:File/Listing.pm
+LWP:HTML/Form.pm
+LWP:HTTP/Cookies.pm
+LWP:HTTP/Cookies/Microsoft.pm
+LWP:HTTP/Cookies/Netscape.pm
+LWP:HTTP/Daemon.pm
+LWP:HTTP/Date.pm
+LWP:HTTP/Headers.pm
+LWP:HTTP/Headers/Auth.pm
+LWP:HTTP/Headers/ETag.pm
+LWP:HTTP/Headers/Util.pm
+LWP:HTTP/Message.pm
+LWP:HTTP/Negotiate.pm
+LWP:HTTP/Request.pm
+LWP:HTTP/Request/Common.pm
+LWP:HTTP/Response.pm
+LWP:HTTP/Status.pm
+LWP:LWP.pm
+LWP:LWP/Authen/Basic.pm
+LWP:LWP/Authen/Digest.pm
+LWP:LWP/Authen/Ntlm.pm
+LWP:LWP/ConnCache.pm
+LWP:LWP/Debug.pm
+LWP:LWP/DebugFile.pm
+LWP:LWP/MediaTypes.pm
+LWP:LWP/MemberMixin.pm
+LWP:LWP/Protocol.pm
+LWP:LWP/Protocol/GHTTP.pm
+LWP:LWP/Protocol/cpan.pm
+LWP:LWP/Protocol/data.pm
+LWP:LWP/Protocol/file.pm
+LWP:LWP/Protocol/ftp.pm
+LWP:LWP/Protocol/gopher.pm
+LWP:LWP/Protocol/http.pm
+LWP:LWP/Protocol/http10.pm
+LWP:LWP/Protocol/https.pm
+LWP:LWP/Protocol/https10.pm
+LWP:LWP/Protocol/loopback.pm
+LWP:LWP/Protocol/mailto.pm
+LWP:LWP/Protocol/nntp.pm
+LWP:LWP/Protocol/nogo.pm
+LWP:LWP/RobotUA.pm
+LWP:LWP/Simple.pm
+LWP:LWP/UserAgent.pm
+LWP:LWP/media.types
+LWP:Net/HTTP.pm
+LWP:Net/HTTP/Methods.pm
+LWP:Net/HTTP/NB.pm
+LWP:Net/HTTPS.pm
+LWP:WWW/RobotRules.pm
+LWP:WWW/RobotRules/AnyDBM_File.pm
+MIME-Base64:MIME/Base64.pm
+MP3-Info:MP3/Info.pm
+MP4-Info:MP4/Info.pm
+Net-DNS:Net/DNS.pm
+Net-DNS:Net/DNS/FAQ.pod
+Net-DNS:Net/DNS/Header.pm
+Net-DNS:Net/DNS/Nameserver.pm
+Net-DNS:Net/DNS/Packet.pm
+Net-DNS:Net/DNS/Question.pm
+Net-DNS:Net/DNS/RR.pm
+Net-DNS:Net/DNS/RR/A.pm
+Net-DNS:Net/DNS/RR/AAAA.pm
+Net-DNS:Net/DNS/RR/AFSDB.pm
+Net-DNS:Net/DNS/RR/CERT.pm
+Net-DNS:Net/DNS/RR/CNAME.pm
+Net-DNS:Net/DNS/RR/DNAME.pm
+Net-DNS:Net/DNS/RR/EID.pm
+Net-DNS:Net/DNS/RR/HINFO.pm
+Net-DNS:Net/DNS/RR/ISDN.pm
+Net-DNS:Net/DNS/RR/LOC.pm
+Net-DNS:Net/DNS/RR/MB.pm
+Net-DNS:Net/DNS/RR/MG.pm
+Net-DNS:Net/DNS/RR/MINFO.pm
+Net-DNS:Net/DNS/RR/MR.pm
+Net-DNS:Net/DNS/RR/MX.pm
+Net-DNS:Net/DNS/RR/NAPTR.pm
+Net-DNS:Net/DNS/RR/NIMLOC.pm
+Net-DNS:Net/DNS/RR/NS.pm
+Net-DNS:Net/DNS/RR/NSAP.pm
+Net-DNS:Net/DNS/RR/NULL.pm
+Net-DNS:Net/DNS/RR/OPT.pm
+Net-DNS:Net/DNS/RR/PTR.pm
+Net-DNS:Net/DNS/RR/PX.pm
+Net-DNS:Net/DNS/RR/RP.pm
+Net-DNS:Net/DNS/RR/RT.pm
+Net-DNS:Net/DNS/RR/SOA.pm
+Net-DNS:Net/DNS/RR/SRV.pm
+Net-DNS:Net/DNS/RR/TKEY.pm
+Net-DNS:Net/DNS/RR/TSIG.pm
+Net-DNS:Net/DNS/RR/TXT.pm
+Net-DNS:Net/DNS/RR/Unknown.pm
+Net-DNS:Net/DNS/RR/X25.pm
+Net-DNS:Net/DNS/Resolver.pm
+Net-DNS:Net/DNS/Resolver/Base.pm
+Net-DNS:Net/DNS/Resolver/Cygwin.pm
+Net-DNS:Net/DNS/Resolver/Recurse.pm
+Net-DNS:Net/DNS/Resolver/UNIX.pm
+Net-DNS:Net/DNS/Resolver/Win32.pm
+Net-DNS:Net/DNS/Select.pm
+Net-DNS:Net/DNS/Update.pm
+Ogg-Vorbis-Header-PurePerl:Ogg/Vorbis/Header/PurePerl.pm
+SQL-Abstract:SQL/Abstract.pm
+SQL-Statement:SQL/Dialects/ANSI.pm
+SQL-Statement:SQL/Dialects/AnyData.pm
+SQL-Statement:SQL/Dialects/CSV.pm
+SQL-Statement:SQL/Eval.pm
+SQL-Statement:SQL/Parser.pm
+SQL-Statement:SQL/Statement.pm
+SQL-Statement:SQL/Statement/GetInfo.pm
+Template-Toolkit:Template.pm
+Template-Toolkit:Template/Base.pm
+Template-Toolkit:Template/Config.pm
+Template-Toolkit:Template/Constants.pm
+Template-Toolkit:Template/Context.pm
+Template-Toolkit:Template/Directive.pm
+Template-Toolkit:Template/Document.pm
+Template-Toolkit:Template/Exception.pm
+Template-Toolkit:Template/Filters.pm
+Template-Toolkit:Template/Grammar.pm
+Template-Toolkit:Template/Iterator.pm
+Template-Toolkit:Template/Namespace/Constants.pm
+Template-Toolkit:Template/Parser.pm
+Template-Toolkit:Template/Plugin.pm
+Template-Toolkit:Template/Plugin/Autoformat.pm
+Template-Toolkit:Template/Plugin/CGI.pm
+Template-Toolkit:Template/Plugin/DBI.pm
+Template-Toolkit:Template/Plugin/Datafile.pm
+Template-Toolkit:Template/Plugin/Date.pm
+Template-Toolkit:Template/Plugin/Directory.pm
+Template-Toolkit:Template/Plugin/Dumper.pm
+Template-Toolkit:Template/Plugin/File.pm
+Template-Toolkit:Template/Plugin/Filter.pm
+Template-Toolkit:Template/Plugin/Format.pm
+Template-Toolkit:Template/Plugin/GD/Constants.pm
+Template-Toolkit:Template/Plugin/GD/Graph/area.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/linespoints.pm
+Template-Toolkit:Template/Plugin/GD/Graph/mixed.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/points.pm
+Template-Toolkit:Template/Plugin/GD/Image.pm
+Template-Toolkit:Template/Plugin/GD/Polygon.pm
+Template-Toolkit:Template/Plugin/GD/Text.pm
+Template-Toolkit:Template/Plugin/GD/Text/Align.pm
+Template-Toolkit:Template/Plugin/GD/Text/Wrap.pm
+Template-Toolkit:Template/Plugin/HTML.pm
+Template-Toolkit:Template/Plugin/Image.pm
+Template-Toolkit:Template/Plugin/Iterator.pm
+Template-Toolkit:Template/Plugin/Pod.pm
+Template-Toolkit:Template/Plugin/Procedural.pm
+Template-Toolkit:Template/Plugin/String.pm
+Template-Toolkit:Template/Plugin/Table.pm
+Template-Toolkit:Template/Plugin/URL.pm
+Template-Toolkit:Template/Plugin/View.pm
+Template-Toolkit:Template/Plugin/Wrap.pm
+Template-Toolkit:Template/Plugin/XML/DOM.pm
+Template-Toolkit:Template/Plugin/XML/RSS.pm
+Template-Toolkit:Template/Plugin/XML/Simple.pm
+Template-Toolkit:Template/Plugin/XML/Style.pm
+Template-Toolkit:Template/Plugin/XML/XPath.pm
+Template-Toolkit:Template/Plugins.pm
+Template-Toolkit:Template/Provider.pm
+Template-Toolkit:Template/Service.pm
+Template-Toolkit:Template/Stash.pm
+Template-Toolkit:Template/Stash/Context.pm
+Template-Toolkit:Template/Stash/XS.pm
+Template-Toolkit:Template/Test.pm
+Template-Toolkit:Template/View.pm
+Tie-RegexpHash:Tie/RegexpHash.pm
+UNIVERSAL-moniker:Universal/moniker.pm
+URI:URI.pm
+URI:URI/Escape.pm
+URI:URI/Heuristic.pm
+URI:URI/QueryParam.pm
+URI:URI/Split.pm
+URI:URI/URL.pm
+URI:URI/WithBase.pm
+URI:URI/_foreign.pm
+URI:URI/_generic.pm
+URI:URI/_ldap.pm
+URI:URI/_login.pm
+URI:URI/_query.pm
+URI:URI/_segment.pm
+URI:URI/_server.pm
+URI:URI/_userpass.pm
+URI:URI/data.pm
+URI:URI/file.pm
+URI:URI/file/Base.pm
+URI:URI/file/FAT.pm
+URI:URI/file/Mac.pm
+URI:URI/file/OS2.pm
+URI:URI/file/QNX.pm
+URI:URI/file/Unix.pm
+URI:URI/file/Win32.pm
+URI:URI/ftp.pm
+URI:URI/gopher.pm
+URI:URI/http.pm
+URI:URI/https.pm
+URI:URI/ldap.pm
+URI:URI/ldapi.pm
+URI:URI/ldaps.pm
+URI:URI/mailto.pm
+URI:URI/mms.pm
+URI:URI/news.pm
+URI:URI/nntp.pm
+URI:URI/pop.pm
+URI:URI/rlogin.pm
+URI:URI/rsync.pm
+URI:URI/rtsp.pm
+URI:URI/rtspu.pm
+URI:URI/sip.pm
+URI:URI/sips.pm
+URI:URI/snews.pm
+URI:URI/ssh.pm
+URI:URI/telnet.pm
+URI:URI/tn3270.pm
+URI:URI/urn.pm
+URI:URI/urn/isbn.pm
+URI:URI/urn/oid.pm
+XML-NamespaceSupport:XML/NamespaceSupport.pm
+XML-SAX:XML/SAX.pm
+XML-SAX:XML/SAX/Base.pm
+XML-SAX:XML/SAX/DocumentLocator.pm
+XML-SAX:XML/SAX/Exception.pm
+XML-SAX:XML/SAX/Intro.pod
+XML-SAX:XML/SAX/ParserDetails.ini
+XML-SAX:XML/SAX/ParserFactory.pm
+XML-SAX:XML/SAX/PurePerl.pm
+XML-SAX:XML/SAX/PurePerl/DTDDecls.pm
+XML-SAX:XML/SAX/PurePerl/DebugHandler.pm
+XML-SAX:XML/SAX/PurePerl/DocType.pm
+XML-SAX:XML/SAX/PurePerl/EncodingDetect.pm
+XML-SAX:XML/SAX/PurePerl/Exception.pm
+XML-SAX:XML/SAX/PurePerl/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Productions.pm
+XML-SAX:XML/SAX/PurePerl/Reader.pm
+XML-SAX:XML/SAX/PurePerl/Reader/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Reader/Stream.pm
+XML-SAX:XML/SAX/PurePerl/Reader/String.pm
+XML-SAX:XML/SAX/PurePerl/Reader/URI.pm
+XML-SAX:XML/SAX/PurePerl/Reader/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/XMLDecl.pm
+XML-SAX:XML/SAX/placeholder.pl
+XML-Simple:XML/Simple.pm
+_slim:Audio/FLAC.pm
+_slim:QuickTime/Movie.pm
+_slim:URI/icy.pm
+_slim:URI/itunesplaylist.pm
+_slim:URI/moodlogicplaylist.pm
diff --git a/audio/slimserver/files/patch-Slim_Utils_Prefs.pm b/audio/slimserver/files/patch-Slim_Utils_Prefs.pm
index c475b4593af3..866f1c52387a 100644
--- a/audio/slimserver/files/patch-Slim_Utils_Prefs.pm
+++ b/audio/slimserver/files/patch-Slim_Utils_Prefs.pm
@@ -1,9 +1,27 @@
$FreeBSD$
---- Slim/Utils/Prefs.pm.orig Thu Apr 15 18:09:50 2004
-+++ Slim/Utils/Prefs.pm Thu Apr 15 18:10:44 2004
-@@ -564,7 +564,7 @@
+--- Slim/Utils/Prefs.pm.orig
++++ Slim/Utils/Prefs.pm
+@@ -59,6 +59,8 @@
+ $path = $ENV{'HOME'} . '/Music/Playlists';
+ } elsif (Slim::Utils::OSDetect::OS() eq 'win') {
+ $path = $Bin . '/Playlists';
++ } elsif (Slim::Utils::OSDetect::OS() eq 'unix') {
++ $path = "/var/db/slimserver/playlists";
+ } else {
+ $path = '';
+ }
+@@ -72,7 +74,7 @@
+ if ($os eq 'mac') {
+ $CacheDir = catdir($ENV{'HOME'}, '/Library/Caches/SlimServer');
+ } elsif ($os eq 'unix') {
+- $CacheDir = $ENV{'HOME'};
++ $CacheDir = "/var/db/slimserver/cache";
+ }
+ my @CacheDirs = splitdir($CacheDir);
+ pop @CacheDirs;
+@@ -605,7 +607,7 @@
} elsif (Slim::Utils::OSDetect::OS() eq 'win') {
$prefsPath = $Bin;
} else {
diff --git a/audio/slimserver/files/pm2port b/audio/slimserver/files/pm2port
new file mode 100644
index 000000000000..9e586a503bbd
--- /dev/null
+++ b/audio/slimserver/files/pm2port
@@ -0,0 +1,41 @@
+Audio-Musepack,
+Audio-WMA,Audio/WMA.pm:audio/p5-Audio-WMA
+Audio-Wav,Audio/Wav.pm:audio/p5-Audio-Wav
+Class-Accessor,Class/Accessor.pm:devel/p5-Class-Accessor
+Class-Accessor-Chained,Class/Accessor/Chained.pm:devel/p5-Class-Accessor-Chained
+Class-DBI,Class/DBI.pm:databases/p5-Class-DBI
+Class-DBI-AbstractSearch,Class/DBI/AbstractSearch.pm:databases/p5-Class-DBI-AbstractSearch
+Class-DBI-Pager,Class/DBI/Pager.pm:databases/p5-Class-DBI-Pager
+Class-DBI-Plugin,
+Class-DBI-Plugin-AbstractCount,
+Class-DBI-Plugin-CountSearch,
+Class-DBI-Plugin-RetrieveAll,Class/DBI/Plugin/RetrieveAll.pm:databases/p5-Class-DBI-Plugin-RetrieveAll
+Class-DBI-Cacheable,
+Class-Data-Inheritable,Class/Data/Inheritable.pm:devel/p5-Class-Data-Inheritable
+Class-Trigger,Class/Trigger.pm:devel/p5-Class-Trigger
+Class-WhiteHole,Class/WhiteHole.pm:devel/p5-Class-WhiteHole
+DBIx-ContextualFetch,DBIx/ContextualFetch.pm:databases/p5-DBIx-ContextualFetch
+Date-Page,Data/Page.pm:databases/p5-Data-Page
+File-Spec,File/Spec.pm:devel/p5-File-Spec
+File-Temp,_builtin
+File-Which,File/Which.pm:sysutils/p5-File-Which
+HTML-Parser,${PERL_ARCH}/HTML/Parser.pm:www/p5-HTML-Parser
+IO-String,IO/String.pm:devel/p5-IO-String
+Ima-DBI,Ima/DBI.pm:databases/p5-Ima-DBI
+LWP,Bundle/LWP.pm:www/p5-libwww
+MIME-Base64,${PERL_ARCH}/MIME/Base64.pm:converters/p5-MIME-Base64
+MP3-Info,MP3/Info.pm:audio/p5-MP3-Info
+MP4-Info,
+Net-DNS,Net/DNS/ZoneFile/Fast.pm:dns/p5-Net-DNS-ZoneFile-Fast
+Ogg-Vorbis-Header-PurePerl,
+SQL-Abstract,SQL/Abstract.pm:databases/p5-SQL-Abstract
+SQL-Statement,SQL/Statement.pm:databases/p5-SQL-Statement
+Template-Toolkit,${PERL_ARCH}/Template.pm:www/p5-Template-Toolkit
+Tie-RegexpHash,
+Time-HiRes,${PERL_ARCH}/Time/HiRes.pm:devel/p5-Time-HiRes
+UNIVERSAL-moniker,UNIVERSAL/moniker.pm:devel/p5-UNIVERSAL-moniker
+URI,URI.pm:net/p5-URI
+XML-NamespaceSupport,XML/NamespaceSupport.pm:textproc/p5-XML-NamespaceSupport
+XML-SAX,XML/SAX.pm:textproc/p5-XML-SAX
+XML-Simple,XML/Simple.pm:textproc/p5-XML-Simple
+_slim,
diff --git a/audio/slimserver/files/softsqueeze.sh b/audio/slimserver/files/softsqueeze.sh
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/slimserver/files/softsqueeze.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/slimserver/files/softsqueeze.sh.in b/audio/slimserver/files/softsqueeze.sh.in
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/slimserver/files/softsqueeze.sh.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/slimserver/pkg-install b/audio/slimserver/pkg-install
index aaf7fbd5923d..a4141e4262fa 100644
--- a/audio/slimserver/pkg-install
+++ b/audio/slimserver/pkg-install
@@ -10,6 +10,7 @@ shell=/sbin/nologin
comment="Slim Devices SlimServer pseudo-user"
statedir=/var/db/slimserver
cachedir=${statedir}/cache
+playlistdir=${statedir}/playlists
pidfile=/var/run/${name}.pid
newsyslogfile=/etc/newsyslog.conf
logfile=/var/log/slimserver.log
@@ -49,6 +50,10 @@ POST-INSTALL)
mkdir -p ${cachedir}
chown -R ${u}:${g} ${cachedir}
fi
+ if [ ! -d ${playlistdir} ]; then
+ mkdir -p ${playlistdir}
+ chown -R ${u}:${g} ${playlistdir}
+ fi
if egrep -q "^${logfile}\>" ${newsyslogfile}; then
echo "Using existing ${newsyslogfile} entry."
else
diff --git a/audio/squeezeboxserver/Makefile b/audio/squeezeboxserver/Makefile
index a277e9af497d..b04d2d204202 100644
--- a/audio/squeezeboxserver/Makefile
+++ b/audio/squeezeboxserver/Makefile
@@ -7,6 +7,7 @@
PORTNAME= slimserver
PORTVERSION?= 5.4.0
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= http://www.slimdevices.com/downloads/${NIGHTLY}SlimServer_v${DISTVERSION}/
DISTNAME= SlimServer_v${DISTVERSION}
@@ -16,31 +17,18 @@ COMMENT= Slim Devices audio streaming server
DISTVERSION?= ${PORTVERSION}
-RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder \
- ${SITE_PERL}/Audio/Wav.pm:${PORTSDIR}/audio/p5-Audio-Wav \
- ${SITE_PERL}/Audio/WMA.pm:${PORTSDIR}/audio/p5-Audio-WMA \
- ${SITE_PERL}/MP3/Info.pm:${PORTSDIR}/audio/p5-MP3-Info \
- ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 \
- ${SITE_PERL}/Data/Page.pm:${PORTSDIR}/databases/p5-Data-Page \
- ${SITE_PERL}/DBIx/ContextualFetch.pm:${PORTSDIR}/databases/p5-DBIx-ContextualFetch \
- ${SITE_PERL}/Ima/DBI.pm:${PORTSDIR}/databases/p5-Ima-DBI \
- ${SITE_PERL}/SQL/Abstract.pm:${PORTSDIR}/databases/p5-SQL-Abstract \
- ${SITE_PERL}/SQL/Statement.pm:${PORTSDIR}/databases/p5-SQL-Statement \
- ${SITE_PERL}/Class/Accessor.pm:${PORTSDIR}/devel/p5-Class-Accessor \
- ${SITE_PERL}/File/Spec.pm:${PORTSDIR}/devel/p5-File-Spec \
- ${SITE_PERL}/IO/String.pm:${PORTSDIR}/devel/p5-IO-String \
- ${SITE_PERL}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \
- ${SITE_PERL}/UNIVERSAL/moniker.pm:${PORTSDIR}/devel/p5-UNIVERSAL-moniker \
- ${SITE_PERL}/${PERL_ARCH}/Net/DNS.pm:${PORTSDIR}/dns/p5-Net-DNS \
- ${SITE_PERL}/File/Which.pm:${PORTSDIR}/sysutils/p5-File-Which \
- ${SITE_PERL}/XML/NamespaceSupport.pm:${PORTSDIR}/textproc/p5-XML-NamespaceSupport \
- ${SITE_PERL}/XML/SAX.pm:${PORTSDIR}/textproc/p5-XML-SAX \
- ${SITE_PERL}/XML/Simple.pm:${PORTSDIR}/textproc/p5-XML-Simple \
- ${SITE_PERL}/LWP.pm:${PORTSDIR}/www/p5-libwww \
- ${SITE_PERL}/${PERL_ARCH}/Template.pm:${PORTSDIR}/www/p5-Template-Toolkit
+
+RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder
.include <bsd.port.pre.mk>
+SLIM_CPAN_DEPS!= cut -f 2 -d, ${FILESDIR}/pm2port | grep -v ^_builtin
+RUN_DEPENDS+= ${SLIM_CPAN_DEPS:S|^|${SITE_PERL}/|:S|:|:${PORTSDIR}/|}
+
+.if ${PERL_LEVEL} < 500800
+IGNORE= "Perl 5.8 or newer required. Install lang/perl5.8 and try again."
+.endif
+
.if ${OSVERSION} < 502110
RUN_DEPENDS+= ${LOCALBASE}/bin/pgrep:${PORTSDIR}/sysutils/pkill
PGREPBASE= ${LOCALBASE}
@@ -53,34 +41,17 @@ TMP_SLIMDIR= ${WRKDIR}/slimserver
TMP_DOCSDIR= ${WRKDIR}/doc
DOCFILES= Changelog.html Installation.txt
EXCEPTFILES= ${DOCFILES} \
- CPAN/Audio/WMA.pm
+ CPAN/File/.exists \
+ CPAN/MP3/.exists
EXCEPTDIRS= Bin \
- CPAN/arch \
- CPAN/Audio/Wav \
- CPAN/Bundle \
- CPAN/Class \
- CPAN/Data \
- CPAN/DBIx \
- CPAN/File \
- CPAN/HTML \
- CPAN/HTTP \
- CPAN/Ima \
- CPAN/IO \
- CPAN/LWP \
- CPAN/MIME \
- CPAN/MP3 \
- CPAN/Net \
- CPAN/SQL \
- CPAN/Template \
- CPAN/Universal \
- CPAN/URI \
- CPAN/XML
+ CPAN/arch
CPIOARGS= --quiet -pdum -R
PLIST= ${WRKDIR}/pkg-plist
PLIST_SUB= SLIMDIR=${SLIMDIR}
-SED_SCRIPT+= -e 's,%%PREFIX%%,${PREFIX},g' \
+SED_SCRIPT+= -e 's,%%LOCALBASE%%,${LOCALBASE},g' \
+ -e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%PGREPBASE%%,${PGREPBASE},g' \
-e 's,%%RC_SUBR%%,${RC_SUBR},g' \
-e 's,%%SLIMDIR%%,${SLIMDIR},g'
@@ -94,23 +65,36 @@ pre-fetch:
post-patch:
@${SED} ${SED_SCRIPT} <${FILESDIR}/slimserver.sh >${WRKDIR}/slimserver.sh
+ @${SED} ${SED_SCRIPT} <${FILESDIR}/softsqueeze.sh >${WRKDIR}/softsqueeze.sh
SLIMDIR?= slimserver
-pre-install:
- @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-
do-build:
@${MKDIR} -m 0755 ${TMP_SLIMDIR}
@cd ${WRKSRC} && \
- ${FIND} . -name \*.orig ${EXCEPTFILES:S/^/-o -name /} \
+ ${FIND} . -name \*.orig ${EXCEPTFILES:S|^|-o -path ./|} \
${EXCEPTDIRS:S/$/\*/:S/^/-o -path .\//} -o -print | \
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${TMP_SLIMDIR}
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for pm in `egrep -v ,$$ ${FILESDIR}/pm2port | cut -f 1 -d,`; do \
+ grep "$${pm}:" ${FILESDIR}/CPANfiles | cut -f2 -d: | xargs rm; \
+ done
+ @find ${TMP_SLIMDIR}/CPAN -depth -type d -empty -delete
+.if defined(PORTDEV)
+ @echo "Checking for unexpected files in CPAN"
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for file in `find . -type f | sed -e 's|^\./||'`; do \
+ egrep -q ":$${file}\$$" ${FILESDIR}/CPANfiles || \
+ echo $${file} ; \
+ done
+ @echo
+.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${TMP_DOCSDIR}
@cd ${WRKSRC} && ${INSTALL_DATA} ${DOCFILES} ${TMP_DOCSDIR}
.endif
@${ECHO} "etc/rc.d/slimserver${PKGNAMESUFFIX}.sh" > ${PLIST}
+ @${ECHO} "bin/softsqueeze" >> ${PLIST}
.if !defined(NOPORTDOCS)
@${FIND} ${TMP_DOCSDIR} -type f | \
${SED} -e 's|${TMP_DOCSDIR}|%%DOCSDIR%%|' | \
@@ -130,6 +114,9 @@ do-build:
.endif
@${ECHO} '@unexec rmdir /var/db/slimserver 2>/dev/null || (echo "Configuration information saved. If you will *NOT* use this package anymore," && echo "please remove /var/db/slimserver and its contents manually.")' >> ${PLIST}
+pre-install:
+ @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
+
do-install:
@${MKDIR} -m 0755 ${PREFIX}/${SLIMDIR}
@${LN} -s /var/db/slimserver/cache ${PREFIX}/${SLIMDIR}/Cache
@@ -138,6 +125,7 @@ do-install:
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${PREFIX}/${SLIMDIR}
@${INSTALL_SCRIPT} ${WRKDIR}/slimserver.sh \
${PREFIX}/etc/rc.d/slimserver${PKGNAMESUFFIX}.sh
+ @${INSTALL_SCRIPT} ${WRKDIR}/softsqueeze.sh ${PREFIX}/bin/softsqueeze
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@cd ${TMP_DOCSDIR} && \
diff --git a/audio/squeezeboxserver/files/CPANfiles b/audio/squeezeboxserver/files/CPANfiles
new file mode 100644
index 000000000000..a902f8c8e743
--- /dev/null
+++ b/audio/squeezeboxserver/files/CPANfiles
@@ -0,0 +1,304 @@
+Audio-Musepack:Audio/APETags.pm
+Audio-Musepack:Audio/Musepack.pm
+Audio-WMA:Audio/WMA.pm
+Audio-Wav:Audio/Wav.pm
+Audio-Wav:Audio/Wav/Changes
+Audio-Wav:Audio/Wav/MANIFEST
+Audio-Wav:Audio/Wav/Makefile.PL
+Audio-Wav:Audio/Wav/README
+Audio-Wav:Audio/Wav/Read.pm
+Audio-Wav:Audio/Wav/Tools.pm
+Audio-Wav:Audio/Wav/Write.pm
+Audio-Wav:Audio/Wav/Write/Header.pm
+Audio-Wav:Audio/Wav/test.pl
+Audio-Wav:Audio/Wav/test_tone.wav
+Class-Accessor-Chained:Class/Accessor/Chained.pm
+Class-Accessor-Chained:Class/Accessor/Chained/Fast.pm
+Class-Accessor:Class/Accessor.pm
+Class-Accessor:Class/Accessor/Fast.pm
+Class-DBI-AbstractSearch:Class/DBI/AbstractSearch.pm
+Class-DBI-Cacheable:Class/DBI/Cacheable.pm
+Class-DBI-Cacheable:Class/DBI/ObjectCache.pm
+Class-DBI-Pager:Class/DBI/Pager.pm
+Class-DBI-Plugin-AbstractCount:Class/DBI/Plugin/AbstractCount.pm
+Class-DBI-Plugin-CountSearch:Class/DBI/Plugin/CountSearch.pm
+Class-DBI-Plugin-RetrieveAll:Class/DBI/Plugin/RetrieveAll.pm
+Class-DBI-Plugin:Class/DBI/Plugin.pm
+Class-DBI:Class/DBI.pm
+Class-DBI:Class/DBI/Column.pm
+Class-DBI:Class/DBI/ColumnGrouper.pm
+Class-DBI:Class/DBI/Iterator.pm
+Class-DBI:Class/DBI/Query.pm
+Class-Data-Inheritable:Class/Data/Inheritable.pm
+Class-Trigger:Class/Trigger.pm
+Class-WhiteHole:Class/WhiteHole.pm
+DBIx-ContextualFetch:DBIx/ContextualFetch.pm
+Date-Page:Data/Page.pm
+File-Spec:File/Spec.pm
+File-Spec:File/Spec/Functions.pm
+File-Spec:File/Spec/Mac.pm
+File-Spec:File/Spec/OS2.pm
+File-Spec:File/Spec/Unix.pm
+File-Spec:File/Spec/VMS.pm
+File-Spec:File/Spec/Win32.pm
+File-Temp:File/Temp.pm
+File-Which:File/Which.pm
+HTML-Parser:HTML/Entities.pm
+IO-String:IO/String.pm
+Ima-DBI:Ima/DBI.pm
+LWP:Bundle/LWP.pm
+LWP:File/Listing.pm
+LWP:HTML/Form.pm
+LWP:HTTP/Cookies.pm
+LWP:HTTP/Cookies/Microsoft.pm
+LWP:HTTP/Cookies/Netscape.pm
+LWP:HTTP/Daemon.pm
+LWP:HTTP/Date.pm
+LWP:HTTP/Headers.pm
+LWP:HTTP/Headers/Auth.pm
+LWP:HTTP/Headers/ETag.pm
+LWP:HTTP/Headers/Util.pm
+LWP:HTTP/Message.pm
+LWP:HTTP/Negotiate.pm
+LWP:HTTP/Request.pm
+LWP:HTTP/Request/Common.pm
+LWP:HTTP/Response.pm
+LWP:HTTP/Status.pm
+LWP:LWP.pm
+LWP:LWP/Authen/Basic.pm
+LWP:LWP/Authen/Digest.pm
+LWP:LWP/Authen/Ntlm.pm
+LWP:LWP/ConnCache.pm
+LWP:LWP/Debug.pm
+LWP:LWP/DebugFile.pm
+LWP:LWP/MediaTypes.pm
+LWP:LWP/MemberMixin.pm
+LWP:LWP/Protocol.pm
+LWP:LWP/Protocol/GHTTP.pm
+LWP:LWP/Protocol/cpan.pm
+LWP:LWP/Protocol/data.pm
+LWP:LWP/Protocol/file.pm
+LWP:LWP/Protocol/ftp.pm
+LWP:LWP/Protocol/gopher.pm
+LWP:LWP/Protocol/http.pm
+LWP:LWP/Protocol/http10.pm
+LWP:LWP/Protocol/https.pm
+LWP:LWP/Protocol/https10.pm
+LWP:LWP/Protocol/loopback.pm
+LWP:LWP/Protocol/mailto.pm
+LWP:LWP/Protocol/nntp.pm
+LWP:LWP/Protocol/nogo.pm
+LWP:LWP/RobotUA.pm
+LWP:LWP/Simple.pm
+LWP:LWP/UserAgent.pm
+LWP:LWP/media.types
+LWP:Net/HTTP.pm
+LWP:Net/HTTP/Methods.pm
+LWP:Net/HTTP/NB.pm
+LWP:Net/HTTPS.pm
+LWP:WWW/RobotRules.pm
+LWP:WWW/RobotRules/AnyDBM_File.pm
+MIME-Base64:MIME/Base64.pm
+MP3-Info:MP3/Info.pm
+MP4-Info:MP4/Info.pm
+Net-DNS:Net/DNS.pm
+Net-DNS:Net/DNS/FAQ.pod
+Net-DNS:Net/DNS/Header.pm
+Net-DNS:Net/DNS/Nameserver.pm
+Net-DNS:Net/DNS/Packet.pm
+Net-DNS:Net/DNS/Question.pm
+Net-DNS:Net/DNS/RR.pm
+Net-DNS:Net/DNS/RR/A.pm
+Net-DNS:Net/DNS/RR/AAAA.pm
+Net-DNS:Net/DNS/RR/AFSDB.pm
+Net-DNS:Net/DNS/RR/CERT.pm
+Net-DNS:Net/DNS/RR/CNAME.pm
+Net-DNS:Net/DNS/RR/DNAME.pm
+Net-DNS:Net/DNS/RR/EID.pm
+Net-DNS:Net/DNS/RR/HINFO.pm
+Net-DNS:Net/DNS/RR/ISDN.pm
+Net-DNS:Net/DNS/RR/LOC.pm
+Net-DNS:Net/DNS/RR/MB.pm
+Net-DNS:Net/DNS/RR/MG.pm
+Net-DNS:Net/DNS/RR/MINFO.pm
+Net-DNS:Net/DNS/RR/MR.pm
+Net-DNS:Net/DNS/RR/MX.pm
+Net-DNS:Net/DNS/RR/NAPTR.pm
+Net-DNS:Net/DNS/RR/NIMLOC.pm
+Net-DNS:Net/DNS/RR/NS.pm
+Net-DNS:Net/DNS/RR/NSAP.pm
+Net-DNS:Net/DNS/RR/NULL.pm
+Net-DNS:Net/DNS/RR/OPT.pm
+Net-DNS:Net/DNS/RR/PTR.pm
+Net-DNS:Net/DNS/RR/PX.pm
+Net-DNS:Net/DNS/RR/RP.pm
+Net-DNS:Net/DNS/RR/RT.pm
+Net-DNS:Net/DNS/RR/SOA.pm
+Net-DNS:Net/DNS/RR/SRV.pm
+Net-DNS:Net/DNS/RR/TKEY.pm
+Net-DNS:Net/DNS/RR/TSIG.pm
+Net-DNS:Net/DNS/RR/TXT.pm
+Net-DNS:Net/DNS/RR/Unknown.pm
+Net-DNS:Net/DNS/RR/X25.pm
+Net-DNS:Net/DNS/Resolver.pm
+Net-DNS:Net/DNS/Resolver/Base.pm
+Net-DNS:Net/DNS/Resolver/Cygwin.pm
+Net-DNS:Net/DNS/Resolver/Recurse.pm
+Net-DNS:Net/DNS/Resolver/UNIX.pm
+Net-DNS:Net/DNS/Resolver/Win32.pm
+Net-DNS:Net/DNS/Select.pm
+Net-DNS:Net/DNS/Update.pm
+Ogg-Vorbis-Header-PurePerl:Ogg/Vorbis/Header/PurePerl.pm
+SQL-Abstract:SQL/Abstract.pm
+SQL-Statement:SQL/Dialects/ANSI.pm
+SQL-Statement:SQL/Dialects/AnyData.pm
+SQL-Statement:SQL/Dialects/CSV.pm
+SQL-Statement:SQL/Eval.pm
+SQL-Statement:SQL/Parser.pm
+SQL-Statement:SQL/Statement.pm
+SQL-Statement:SQL/Statement/GetInfo.pm
+Template-Toolkit:Template.pm
+Template-Toolkit:Template/Base.pm
+Template-Toolkit:Template/Config.pm
+Template-Toolkit:Template/Constants.pm
+Template-Toolkit:Template/Context.pm
+Template-Toolkit:Template/Directive.pm
+Template-Toolkit:Template/Document.pm
+Template-Toolkit:Template/Exception.pm
+Template-Toolkit:Template/Filters.pm
+Template-Toolkit:Template/Grammar.pm
+Template-Toolkit:Template/Iterator.pm
+Template-Toolkit:Template/Namespace/Constants.pm
+Template-Toolkit:Template/Parser.pm
+Template-Toolkit:Template/Plugin.pm
+Template-Toolkit:Template/Plugin/Autoformat.pm
+Template-Toolkit:Template/Plugin/CGI.pm
+Template-Toolkit:Template/Plugin/DBI.pm
+Template-Toolkit:Template/Plugin/Datafile.pm
+Template-Toolkit:Template/Plugin/Date.pm
+Template-Toolkit:Template/Plugin/Directory.pm
+Template-Toolkit:Template/Plugin/Dumper.pm
+Template-Toolkit:Template/Plugin/File.pm
+Template-Toolkit:Template/Plugin/Filter.pm
+Template-Toolkit:Template/Plugin/Format.pm
+Template-Toolkit:Template/Plugin/GD/Constants.pm
+Template-Toolkit:Template/Plugin/GD/Graph/area.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/linespoints.pm
+Template-Toolkit:Template/Plugin/GD/Graph/mixed.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/points.pm
+Template-Toolkit:Template/Plugin/GD/Image.pm
+Template-Toolkit:Template/Plugin/GD/Polygon.pm
+Template-Toolkit:Template/Plugin/GD/Text.pm
+Template-Toolkit:Template/Plugin/GD/Text/Align.pm
+Template-Toolkit:Template/Plugin/GD/Text/Wrap.pm
+Template-Toolkit:Template/Plugin/HTML.pm
+Template-Toolkit:Template/Plugin/Image.pm
+Template-Toolkit:Template/Plugin/Iterator.pm
+Template-Toolkit:Template/Plugin/Pod.pm
+Template-Toolkit:Template/Plugin/Procedural.pm
+Template-Toolkit:Template/Plugin/String.pm
+Template-Toolkit:Template/Plugin/Table.pm
+Template-Toolkit:Template/Plugin/URL.pm
+Template-Toolkit:Template/Plugin/View.pm
+Template-Toolkit:Template/Plugin/Wrap.pm
+Template-Toolkit:Template/Plugin/XML/DOM.pm
+Template-Toolkit:Template/Plugin/XML/RSS.pm
+Template-Toolkit:Template/Plugin/XML/Simple.pm
+Template-Toolkit:Template/Plugin/XML/Style.pm
+Template-Toolkit:Template/Plugin/XML/XPath.pm
+Template-Toolkit:Template/Plugins.pm
+Template-Toolkit:Template/Provider.pm
+Template-Toolkit:Template/Service.pm
+Template-Toolkit:Template/Stash.pm
+Template-Toolkit:Template/Stash/Context.pm
+Template-Toolkit:Template/Stash/XS.pm
+Template-Toolkit:Template/Test.pm
+Template-Toolkit:Template/View.pm
+Tie-RegexpHash:Tie/RegexpHash.pm
+UNIVERSAL-moniker:Universal/moniker.pm
+URI:URI.pm
+URI:URI/Escape.pm
+URI:URI/Heuristic.pm
+URI:URI/QueryParam.pm
+URI:URI/Split.pm
+URI:URI/URL.pm
+URI:URI/WithBase.pm
+URI:URI/_foreign.pm
+URI:URI/_generic.pm
+URI:URI/_ldap.pm
+URI:URI/_login.pm
+URI:URI/_query.pm
+URI:URI/_segment.pm
+URI:URI/_server.pm
+URI:URI/_userpass.pm
+URI:URI/data.pm
+URI:URI/file.pm
+URI:URI/file/Base.pm
+URI:URI/file/FAT.pm
+URI:URI/file/Mac.pm
+URI:URI/file/OS2.pm
+URI:URI/file/QNX.pm
+URI:URI/file/Unix.pm
+URI:URI/file/Win32.pm
+URI:URI/ftp.pm
+URI:URI/gopher.pm
+URI:URI/http.pm
+URI:URI/https.pm
+URI:URI/ldap.pm
+URI:URI/ldapi.pm
+URI:URI/ldaps.pm
+URI:URI/mailto.pm
+URI:URI/mms.pm
+URI:URI/news.pm
+URI:URI/nntp.pm
+URI:URI/pop.pm
+URI:URI/rlogin.pm
+URI:URI/rsync.pm
+URI:URI/rtsp.pm
+URI:URI/rtspu.pm
+URI:URI/sip.pm
+URI:URI/sips.pm
+URI:URI/snews.pm
+URI:URI/ssh.pm
+URI:URI/telnet.pm
+URI:URI/tn3270.pm
+URI:URI/urn.pm
+URI:URI/urn/isbn.pm
+URI:URI/urn/oid.pm
+XML-NamespaceSupport:XML/NamespaceSupport.pm
+XML-SAX:XML/SAX.pm
+XML-SAX:XML/SAX/Base.pm
+XML-SAX:XML/SAX/DocumentLocator.pm
+XML-SAX:XML/SAX/Exception.pm
+XML-SAX:XML/SAX/Intro.pod
+XML-SAX:XML/SAX/ParserDetails.ini
+XML-SAX:XML/SAX/ParserFactory.pm
+XML-SAX:XML/SAX/PurePerl.pm
+XML-SAX:XML/SAX/PurePerl/DTDDecls.pm
+XML-SAX:XML/SAX/PurePerl/DebugHandler.pm
+XML-SAX:XML/SAX/PurePerl/DocType.pm
+XML-SAX:XML/SAX/PurePerl/EncodingDetect.pm
+XML-SAX:XML/SAX/PurePerl/Exception.pm
+XML-SAX:XML/SAX/PurePerl/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Productions.pm
+XML-SAX:XML/SAX/PurePerl/Reader.pm
+XML-SAX:XML/SAX/PurePerl/Reader/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Reader/Stream.pm
+XML-SAX:XML/SAX/PurePerl/Reader/String.pm
+XML-SAX:XML/SAX/PurePerl/Reader/URI.pm
+XML-SAX:XML/SAX/PurePerl/Reader/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/XMLDecl.pm
+XML-SAX:XML/SAX/placeholder.pl
+XML-Simple:XML/Simple.pm
+_slim:Audio/FLAC.pm
+_slim:QuickTime/Movie.pm
+_slim:URI/icy.pm
+_slim:URI/itunesplaylist.pm
+_slim:URI/moodlogicplaylist.pm
diff --git a/audio/squeezeboxserver/files/patch-Slim_Utils_Prefs.pm b/audio/squeezeboxserver/files/patch-Slim_Utils_Prefs.pm
index c475b4593af3..866f1c52387a 100644
--- a/audio/squeezeboxserver/files/patch-Slim_Utils_Prefs.pm
+++ b/audio/squeezeboxserver/files/patch-Slim_Utils_Prefs.pm
@@ -1,9 +1,27 @@
$FreeBSD$
---- Slim/Utils/Prefs.pm.orig Thu Apr 15 18:09:50 2004
-+++ Slim/Utils/Prefs.pm Thu Apr 15 18:10:44 2004
-@@ -564,7 +564,7 @@
+--- Slim/Utils/Prefs.pm.orig
++++ Slim/Utils/Prefs.pm
+@@ -59,6 +59,8 @@
+ $path = $ENV{'HOME'} . '/Music/Playlists';
+ } elsif (Slim::Utils::OSDetect::OS() eq 'win') {
+ $path = $Bin . '/Playlists';
++ } elsif (Slim::Utils::OSDetect::OS() eq 'unix') {
++ $path = "/var/db/slimserver/playlists";
+ } else {
+ $path = '';
+ }
+@@ -72,7 +74,7 @@
+ if ($os eq 'mac') {
+ $CacheDir = catdir($ENV{'HOME'}, '/Library/Caches/SlimServer');
+ } elsif ($os eq 'unix') {
+- $CacheDir = $ENV{'HOME'};
++ $CacheDir = "/var/db/slimserver/cache";
+ }
+ my @CacheDirs = splitdir($CacheDir);
+ pop @CacheDirs;
+@@ -605,7 +607,7 @@
} elsif (Slim::Utils::OSDetect::OS() eq 'win') {
$prefsPath = $Bin;
} else {
diff --git a/audio/squeezeboxserver/files/pm2port b/audio/squeezeboxserver/files/pm2port
new file mode 100644
index 000000000000..9e586a503bbd
--- /dev/null
+++ b/audio/squeezeboxserver/files/pm2port
@@ -0,0 +1,41 @@
+Audio-Musepack,
+Audio-WMA,Audio/WMA.pm:audio/p5-Audio-WMA
+Audio-Wav,Audio/Wav.pm:audio/p5-Audio-Wav
+Class-Accessor,Class/Accessor.pm:devel/p5-Class-Accessor
+Class-Accessor-Chained,Class/Accessor/Chained.pm:devel/p5-Class-Accessor-Chained
+Class-DBI,Class/DBI.pm:databases/p5-Class-DBI
+Class-DBI-AbstractSearch,Class/DBI/AbstractSearch.pm:databases/p5-Class-DBI-AbstractSearch
+Class-DBI-Pager,Class/DBI/Pager.pm:databases/p5-Class-DBI-Pager
+Class-DBI-Plugin,
+Class-DBI-Plugin-AbstractCount,
+Class-DBI-Plugin-CountSearch,
+Class-DBI-Plugin-RetrieveAll,Class/DBI/Plugin/RetrieveAll.pm:databases/p5-Class-DBI-Plugin-RetrieveAll
+Class-DBI-Cacheable,
+Class-Data-Inheritable,Class/Data/Inheritable.pm:devel/p5-Class-Data-Inheritable
+Class-Trigger,Class/Trigger.pm:devel/p5-Class-Trigger
+Class-WhiteHole,Class/WhiteHole.pm:devel/p5-Class-WhiteHole
+DBIx-ContextualFetch,DBIx/ContextualFetch.pm:databases/p5-DBIx-ContextualFetch
+Date-Page,Data/Page.pm:databases/p5-Data-Page
+File-Spec,File/Spec.pm:devel/p5-File-Spec
+File-Temp,_builtin
+File-Which,File/Which.pm:sysutils/p5-File-Which
+HTML-Parser,${PERL_ARCH}/HTML/Parser.pm:www/p5-HTML-Parser
+IO-String,IO/String.pm:devel/p5-IO-String
+Ima-DBI,Ima/DBI.pm:databases/p5-Ima-DBI
+LWP,Bundle/LWP.pm:www/p5-libwww
+MIME-Base64,${PERL_ARCH}/MIME/Base64.pm:converters/p5-MIME-Base64
+MP3-Info,MP3/Info.pm:audio/p5-MP3-Info
+MP4-Info,
+Net-DNS,Net/DNS/ZoneFile/Fast.pm:dns/p5-Net-DNS-ZoneFile-Fast
+Ogg-Vorbis-Header-PurePerl,
+SQL-Abstract,SQL/Abstract.pm:databases/p5-SQL-Abstract
+SQL-Statement,SQL/Statement.pm:databases/p5-SQL-Statement
+Template-Toolkit,${PERL_ARCH}/Template.pm:www/p5-Template-Toolkit
+Tie-RegexpHash,
+Time-HiRes,${PERL_ARCH}/Time/HiRes.pm:devel/p5-Time-HiRes
+UNIVERSAL-moniker,UNIVERSAL/moniker.pm:devel/p5-UNIVERSAL-moniker
+URI,URI.pm:net/p5-URI
+XML-NamespaceSupport,XML/NamespaceSupport.pm:textproc/p5-XML-NamespaceSupport
+XML-SAX,XML/SAX.pm:textproc/p5-XML-SAX
+XML-Simple,XML/Simple.pm:textproc/p5-XML-Simple
+_slim,
diff --git a/audio/squeezeboxserver/files/softsqueeze.sh b/audio/squeezeboxserver/files/softsqueeze.sh
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/squeezeboxserver/files/softsqueeze.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/squeezeboxserver/files/softsqueeze.sh.in b/audio/squeezeboxserver/files/softsqueeze.sh.in
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/squeezeboxserver/files/softsqueeze.sh.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/squeezeboxserver/pkg-install b/audio/squeezeboxserver/pkg-install
index aaf7fbd5923d..a4141e4262fa 100644
--- a/audio/squeezeboxserver/pkg-install
+++ b/audio/squeezeboxserver/pkg-install
@@ -10,6 +10,7 @@ shell=/sbin/nologin
comment="Slim Devices SlimServer pseudo-user"
statedir=/var/db/slimserver
cachedir=${statedir}/cache
+playlistdir=${statedir}/playlists
pidfile=/var/run/${name}.pid
newsyslogfile=/etc/newsyslog.conf
logfile=/var/log/slimserver.log
@@ -49,6 +50,10 @@ POST-INSTALL)
mkdir -p ${cachedir}
chown -R ${u}:${g} ${cachedir}
fi
+ if [ ! -d ${playlistdir} ]; then
+ mkdir -p ${playlistdir}
+ chown -R ${u}:${g} ${playlistdir}
+ fi
if egrep -q "^${logfile}\>" ${newsyslogfile}; then
echo "Using existing ${newsyslogfile} entry."
else
diff --git a/audio/squeezecenter/Makefile b/audio/squeezecenter/Makefile
index a277e9af497d..b04d2d204202 100644
--- a/audio/squeezecenter/Makefile
+++ b/audio/squeezecenter/Makefile
@@ -7,6 +7,7 @@
PORTNAME= slimserver
PORTVERSION?= 5.4.0
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= http://www.slimdevices.com/downloads/${NIGHTLY}SlimServer_v${DISTVERSION}/
DISTNAME= SlimServer_v${DISTVERSION}
@@ -16,31 +17,18 @@ COMMENT= Slim Devices audio streaming server
DISTVERSION?= ${PORTVERSION}
-RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder \
- ${SITE_PERL}/Audio/Wav.pm:${PORTSDIR}/audio/p5-Audio-Wav \
- ${SITE_PERL}/Audio/WMA.pm:${PORTSDIR}/audio/p5-Audio-WMA \
- ${SITE_PERL}/MP3/Info.pm:${PORTSDIR}/audio/p5-MP3-Info \
- ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 \
- ${SITE_PERL}/Data/Page.pm:${PORTSDIR}/databases/p5-Data-Page \
- ${SITE_PERL}/DBIx/ContextualFetch.pm:${PORTSDIR}/databases/p5-DBIx-ContextualFetch \
- ${SITE_PERL}/Ima/DBI.pm:${PORTSDIR}/databases/p5-Ima-DBI \
- ${SITE_PERL}/SQL/Abstract.pm:${PORTSDIR}/databases/p5-SQL-Abstract \
- ${SITE_PERL}/SQL/Statement.pm:${PORTSDIR}/databases/p5-SQL-Statement \
- ${SITE_PERL}/Class/Accessor.pm:${PORTSDIR}/devel/p5-Class-Accessor \
- ${SITE_PERL}/File/Spec.pm:${PORTSDIR}/devel/p5-File-Spec \
- ${SITE_PERL}/IO/String.pm:${PORTSDIR}/devel/p5-IO-String \
- ${SITE_PERL}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \
- ${SITE_PERL}/UNIVERSAL/moniker.pm:${PORTSDIR}/devel/p5-UNIVERSAL-moniker \
- ${SITE_PERL}/${PERL_ARCH}/Net/DNS.pm:${PORTSDIR}/dns/p5-Net-DNS \
- ${SITE_PERL}/File/Which.pm:${PORTSDIR}/sysutils/p5-File-Which \
- ${SITE_PERL}/XML/NamespaceSupport.pm:${PORTSDIR}/textproc/p5-XML-NamespaceSupport \
- ${SITE_PERL}/XML/SAX.pm:${PORTSDIR}/textproc/p5-XML-SAX \
- ${SITE_PERL}/XML/Simple.pm:${PORTSDIR}/textproc/p5-XML-Simple \
- ${SITE_PERL}/LWP.pm:${PORTSDIR}/www/p5-libwww \
- ${SITE_PERL}/${PERL_ARCH}/Template.pm:${PORTSDIR}/www/p5-Template-Toolkit
+
+RUN_DEPENDS+= ${LOCALBASE}/bin/mDNSResponderPosix:${PORTSDIR}/net/mDNSResponder
.include <bsd.port.pre.mk>
+SLIM_CPAN_DEPS!= cut -f 2 -d, ${FILESDIR}/pm2port | grep -v ^_builtin
+RUN_DEPENDS+= ${SLIM_CPAN_DEPS:S|^|${SITE_PERL}/|:S|:|:${PORTSDIR}/|}
+
+.if ${PERL_LEVEL} < 500800
+IGNORE= "Perl 5.8 or newer required. Install lang/perl5.8 and try again."
+.endif
+
.if ${OSVERSION} < 502110
RUN_DEPENDS+= ${LOCALBASE}/bin/pgrep:${PORTSDIR}/sysutils/pkill
PGREPBASE= ${LOCALBASE}
@@ -53,34 +41,17 @@ TMP_SLIMDIR= ${WRKDIR}/slimserver
TMP_DOCSDIR= ${WRKDIR}/doc
DOCFILES= Changelog.html Installation.txt
EXCEPTFILES= ${DOCFILES} \
- CPAN/Audio/WMA.pm
+ CPAN/File/.exists \
+ CPAN/MP3/.exists
EXCEPTDIRS= Bin \
- CPAN/arch \
- CPAN/Audio/Wav \
- CPAN/Bundle \
- CPAN/Class \
- CPAN/Data \
- CPAN/DBIx \
- CPAN/File \
- CPAN/HTML \
- CPAN/HTTP \
- CPAN/Ima \
- CPAN/IO \
- CPAN/LWP \
- CPAN/MIME \
- CPAN/MP3 \
- CPAN/Net \
- CPAN/SQL \
- CPAN/Template \
- CPAN/Universal \
- CPAN/URI \
- CPAN/XML
+ CPAN/arch
CPIOARGS= --quiet -pdum -R
PLIST= ${WRKDIR}/pkg-plist
PLIST_SUB= SLIMDIR=${SLIMDIR}
-SED_SCRIPT+= -e 's,%%PREFIX%%,${PREFIX},g' \
+SED_SCRIPT+= -e 's,%%LOCALBASE%%,${LOCALBASE},g' \
+ -e 's,%%PREFIX%%,${PREFIX},g' \
-e 's,%%PGREPBASE%%,${PGREPBASE},g' \
-e 's,%%RC_SUBR%%,${RC_SUBR},g' \
-e 's,%%SLIMDIR%%,${SLIMDIR},g'
@@ -94,23 +65,36 @@ pre-fetch:
post-patch:
@${SED} ${SED_SCRIPT} <${FILESDIR}/slimserver.sh >${WRKDIR}/slimserver.sh
+ @${SED} ${SED_SCRIPT} <${FILESDIR}/softsqueeze.sh >${WRKDIR}/softsqueeze.sh
SLIMDIR?= slimserver
-pre-install:
- @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-
do-build:
@${MKDIR} -m 0755 ${TMP_SLIMDIR}
@cd ${WRKSRC} && \
- ${FIND} . -name \*.orig ${EXCEPTFILES:S/^/-o -name /} \
+ ${FIND} . -name \*.orig ${EXCEPTFILES:S|^|-o -path ./|} \
${EXCEPTDIRS:S/$/\*/:S/^/-o -path .\//} -o -print | \
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${TMP_SLIMDIR}
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for pm in `egrep -v ,$$ ${FILESDIR}/pm2port | cut -f 1 -d,`; do \
+ grep "$${pm}:" ${FILESDIR}/CPANfiles | cut -f2 -d: | xargs rm; \
+ done
+ @find ${TMP_SLIMDIR}/CPAN -depth -type d -empty -delete
+.if defined(PORTDEV)
+ @echo "Checking for unexpected files in CPAN"
+ @cd ${TMP_SLIMDIR}/CPAN && \
+ for file in `find . -type f | sed -e 's|^\./||'`; do \
+ egrep -q ":$${file}\$$" ${FILESDIR}/CPANfiles || \
+ echo $${file} ; \
+ done
+ @echo
+.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${TMP_DOCSDIR}
@cd ${WRKSRC} && ${INSTALL_DATA} ${DOCFILES} ${TMP_DOCSDIR}
.endif
@${ECHO} "etc/rc.d/slimserver${PKGNAMESUFFIX}.sh" > ${PLIST}
+ @${ECHO} "bin/softsqueeze" >> ${PLIST}
.if !defined(NOPORTDOCS)
@${FIND} ${TMP_DOCSDIR} -type f | \
${SED} -e 's|${TMP_DOCSDIR}|%%DOCSDIR%%|' | \
@@ -130,6 +114,9 @@ do-build:
.endif
@${ECHO} '@unexec rmdir /var/db/slimserver 2>/dev/null || (echo "Configuration information saved. If you will *NOT* use this package anymore," && echo "please remove /var/db/slimserver and its contents manually.")' >> ${PLIST}
+pre-install:
+ @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
+
do-install:
@${MKDIR} -m 0755 ${PREFIX}/${SLIMDIR}
@${LN} -s /var/db/slimserver/cache ${PREFIX}/${SLIMDIR}/Cache
@@ -138,6 +125,7 @@ do-install:
${CPIO} ${CPIOARGS} ${BINOWN}:${BINGRP} ${PREFIX}/${SLIMDIR}
@${INSTALL_SCRIPT} ${WRKDIR}/slimserver.sh \
${PREFIX}/etc/rc.d/slimserver${PKGNAMESUFFIX}.sh
+ @${INSTALL_SCRIPT} ${WRKDIR}/softsqueeze.sh ${PREFIX}/bin/softsqueeze
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@cd ${TMP_DOCSDIR} && \
diff --git a/audio/squeezecenter/files/CPANfiles b/audio/squeezecenter/files/CPANfiles
new file mode 100644
index 000000000000..a902f8c8e743
--- /dev/null
+++ b/audio/squeezecenter/files/CPANfiles
@@ -0,0 +1,304 @@
+Audio-Musepack:Audio/APETags.pm
+Audio-Musepack:Audio/Musepack.pm
+Audio-WMA:Audio/WMA.pm
+Audio-Wav:Audio/Wav.pm
+Audio-Wav:Audio/Wav/Changes
+Audio-Wav:Audio/Wav/MANIFEST
+Audio-Wav:Audio/Wav/Makefile.PL
+Audio-Wav:Audio/Wav/README
+Audio-Wav:Audio/Wav/Read.pm
+Audio-Wav:Audio/Wav/Tools.pm
+Audio-Wav:Audio/Wav/Write.pm
+Audio-Wav:Audio/Wav/Write/Header.pm
+Audio-Wav:Audio/Wav/test.pl
+Audio-Wav:Audio/Wav/test_tone.wav
+Class-Accessor-Chained:Class/Accessor/Chained.pm
+Class-Accessor-Chained:Class/Accessor/Chained/Fast.pm
+Class-Accessor:Class/Accessor.pm
+Class-Accessor:Class/Accessor/Fast.pm
+Class-DBI-AbstractSearch:Class/DBI/AbstractSearch.pm
+Class-DBI-Cacheable:Class/DBI/Cacheable.pm
+Class-DBI-Cacheable:Class/DBI/ObjectCache.pm
+Class-DBI-Pager:Class/DBI/Pager.pm
+Class-DBI-Plugin-AbstractCount:Class/DBI/Plugin/AbstractCount.pm
+Class-DBI-Plugin-CountSearch:Class/DBI/Plugin/CountSearch.pm
+Class-DBI-Plugin-RetrieveAll:Class/DBI/Plugin/RetrieveAll.pm
+Class-DBI-Plugin:Class/DBI/Plugin.pm
+Class-DBI:Class/DBI.pm
+Class-DBI:Class/DBI/Column.pm
+Class-DBI:Class/DBI/ColumnGrouper.pm
+Class-DBI:Class/DBI/Iterator.pm
+Class-DBI:Class/DBI/Query.pm
+Class-Data-Inheritable:Class/Data/Inheritable.pm
+Class-Trigger:Class/Trigger.pm
+Class-WhiteHole:Class/WhiteHole.pm
+DBIx-ContextualFetch:DBIx/ContextualFetch.pm
+Date-Page:Data/Page.pm
+File-Spec:File/Spec.pm
+File-Spec:File/Spec/Functions.pm
+File-Spec:File/Spec/Mac.pm
+File-Spec:File/Spec/OS2.pm
+File-Spec:File/Spec/Unix.pm
+File-Spec:File/Spec/VMS.pm
+File-Spec:File/Spec/Win32.pm
+File-Temp:File/Temp.pm
+File-Which:File/Which.pm
+HTML-Parser:HTML/Entities.pm
+IO-String:IO/String.pm
+Ima-DBI:Ima/DBI.pm
+LWP:Bundle/LWP.pm
+LWP:File/Listing.pm
+LWP:HTML/Form.pm
+LWP:HTTP/Cookies.pm
+LWP:HTTP/Cookies/Microsoft.pm
+LWP:HTTP/Cookies/Netscape.pm
+LWP:HTTP/Daemon.pm
+LWP:HTTP/Date.pm
+LWP:HTTP/Headers.pm
+LWP:HTTP/Headers/Auth.pm
+LWP:HTTP/Headers/ETag.pm
+LWP:HTTP/Headers/Util.pm
+LWP:HTTP/Message.pm
+LWP:HTTP/Negotiate.pm
+LWP:HTTP/Request.pm
+LWP:HTTP/Request/Common.pm
+LWP:HTTP/Response.pm
+LWP:HTTP/Status.pm
+LWP:LWP.pm
+LWP:LWP/Authen/Basic.pm
+LWP:LWP/Authen/Digest.pm
+LWP:LWP/Authen/Ntlm.pm
+LWP:LWP/ConnCache.pm
+LWP:LWP/Debug.pm
+LWP:LWP/DebugFile.pm
+LWP:LWP/MediaTypes.pm
+LWP:LWP/MemberMixin.pm
+LWP:LWP/Protocol.pm
+LWP:LWP/Protocol/GHTTP.pm
+LWP:LWP/Protocol/cpan.pm
+LWP:LWP/Protocol/data.pm
+LWP:LWP/Protocol/file.pm
+LWP:LWP/Protocol/ftp.pm
+LWP:LWP/Protocol/gopher.pm
+LWP:LWP/Protocol/http.pm
+LWP:LWP/Protocol/http10.pm
+LWP:LWP/Protocol/https.pm
+LWP:LWP/Protocol/https10.pm
+LWP:LWP/Protocol/loopback.pm
+LWP:LWP/Protocol/mailto.pm
+LWP:LWP/Protocol/nntp.pm
+LWP:LWP/Protocol/nogo.pm
+LWP:LWP/RobotUA.pm
+LWP:LWP/Simple.pm
+LWP:LWP/UserAgent.pm
+LWP:LWP/media.types
+LWP:Net/HTTP.pm
+LWP:Net/HTTP/Methods.pm
+LWP:Net/HTTP/NB.pm
+LWP:Net/HTTPS.pm
+LWP:WWW/RobotRules.pm
+LWP:WWW/RobotRules/AnyDBM_File.pm
+MIME-Base64:MIME/Base64.pm
+MP3-Info:MP3/Info.pm
+MP4-Info:MP4/Info.pm
+Net-DNS:Net/DNS.pm
+Net-DNS:Net/DNS/FAQ.pod
+Net-DNS:Net/DNS/Header.pm
+Net-DNS:Net/DNS/Nameserver.pm
+Net-DNS:Net/DNS/Packet.pm
+Net-DNS:Net/DNS/Question.pm
+Net-DNS:Net/DNS/RR.pm
+Net-DNS:Net/DNS/RR/A.pm
+Net-DNS:Net/DNS/RR/AAAA.pm
+Net-DNS:Net/DNS/RR/AFSDB.pm
+Net-DNS:Net/DNS/RR/CERT.pm
+Net-DNS:Net/DNS/RR/CNAME.pm
+Net-DNS:Net/DNS/RR/DNAME.pm
+Net-DNS:Net/DNS/RR/EID.pm
+Net-DNS:Net/DNS/RR/HINFO.pm
+Net-DNS:Net/DNS/RR/ISDN.pm
+Net-DNS:Net/DNS/RR/LOC.pm
+Net-DNS:Net/DNS/RR/MB.pm
+Net-DNS:Net/DNS/RR/MG.pm
+Net-DNS:Net/DNS/RR/MINFO.pm
+Net-DNS:Net/DNS/RR/MR.pm
+Net-DNS:Net/DNS/RR/MX.pm
+Net-DNS:Net/DNS/RR/NAPTR.pm
+Net-DNS:Net/DNS/RR/NIMLOC.pm
+Net-DNS:Net/DNS/RR/NS.pm
+Net-DNS:Net/DNS/RR/NSAP.pm
+Net-DNS:Net/DNS/RR/NULL.pm
+Net-DNS:Net/DNS/RR/OPT.pm
+Net-DNS:Net/DNS/RR/PTR.pm
+Net-DNS:Net/DNS/RR/PX.pm
+Net-DNS:Net/DNS/RR/RP.pm
+Net-DNS:Net/DNS/RR/RT.pm
+Net-DNS:Net/DNS/RR/SOA.pm
+Net-DNS:Net/DNS/RR/SRV.pm
+Net-DNS:Net/DNS/RR/TKEY.pm
+Net-DNS:Net/DNS/RR/TSIG.pm
+Net-DNS:Net/DNS/RR/TXT.pm
+Net-DNS:Net/DNS/RR/Unknown.pm
+Net-DNS:Net/DNS/RR/X25.pm
+Net-DNS:Net/DNS/Resolver.pm
+Net-DNS:Net/DNS/Resolver/Base.pm
+Net-DNS:Net/DNS/Resolver/Cygwin.pm
+Net-DNS:Net/DNS/Resolver/Recurse.pm
+Net-DNS:Net/DNS/Resolver/UNIX.pm
+Net-DNS:Net/DNS/Resolver/Win32.pm
+Net-DNS:Net/DNS/Select.pm
+Net-DNS:Net/DNS/Update.pm
+Ogg-Vorbis-Header-PurePerl:Ogg/Vorbis/Header/PurePerl.pm
+SQL-Abstract:SQL/Abstract.pm
+SQL-Statement:SQL/Dialects/ANSI.pm
+SQL-Statement:SQL/Dialects/AnyData.pm
+SQL-Statement:SQL/Dialects/CSV.pm
+SQL-Statement:SQL/Eval.pm
+SQL-Statement:SQL/Parser.pm
+SQL-Statement:SQL/Statement.pm
+SQL-Statement:SQL/Statement/GetInfo.pm
+Template-Toolkit:Template.pm
+Template-Toolkit:Template/Base.pm
+Template-Toolkit:Template/Config.pm
+Template-Toolkit:Template/Constants.pm
+Template-Toolkit:Template/Context.pm
+Template-Toolkit:Template/Directive.pm
+Template-Toolkit:Template/Document.pm
+Template-Toolkit:Template/Exception.pm
+Template-Toolkit:Template/Filters.pm
+Template-Toolkit:Template/Grammar.pm
+Template-Toolkit:Template/Iterator.pm
+Template-Toolkit:Template/Namespace/Constants.pm
+Template-Toolkit:Template/Parser.pm
+Template-Toolkit:Template/Plugin.pm
+Template-Toolkit:Template/Plugin/Autoformat.pm
+Template-Toolkit:Template/Plugin/CGI.pm
+Template-Toolkit:Template/Plugin/DBI.pm
+Template-Toolkit:Template/Plugin/Datafile.pm
+Template-Toolkit:Template/Plugin/Date.pm
+Template-Toolkit:Template/Plugin/Directory.pm
+Template-Toolkit:Template/Plugin/Dumper.pm
+Template-Toolkit:Template/Plugin/File.pm
+Template-Toolkit:Template/Plugin/Filter.pm
+Template-Toolkit:Template/Plugin/Format.pm
+Template-Toolkit:Template/Plugin/GD/Constants.pm
+Template-Toolkit:Template/Plugin/GD/Graph/area.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars.pm
+Template-Toolkit:Template/Plugin/GD/Graph/bars3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines.pm
+Template-Toolkit:Template/Plugin/GD/Graph/lines3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/linespoints.pm
+Template-Toolkit:Template/Plugin/GD/Graph/mixed.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie.pm
+Template-Toolkit:Template/Plugin/GD/Graph/pie3d.pm
+Template-Toolkit:Template/Plugin/GD/Graph/points.pm
+Template-Toolkit:Template/Plugin/GD/Image.pm
+Template-Toolkit:Template/Plugin/GD/Polygon.pm
+Template-Toolkit:Template/Plugin/GD/Text.pm
+Template-Toolkit:Template/Plugin/GD/Text/Align.pm
+Template-Toolkit:Template/Plugin/GD/Text/Wrap.pm
+Template-Toolkit:Template/Plugin/HTML.pm
+Template-Toolkit:Template/Plugin/Image.pm
+Template-Toolkit:Template/Plugin/Iterator.pm
+Template-Toolkit:Template/Plugin/Pod.pm
+Template-Toolkit:Template/Plugin/Procedural.pm
+Template-Toolkit:Template/Plugin/String.pm
+Template-Toolkit:Template/Plugin/Table.pm
+Template-Toolkit:Template/Plugin/URL.pm
+Template-Toolkit:Template/Plugin/View.pm
+Template-Toolkit:Template/Plugin/Wrap.pm
+Template-Toolkit:Template/Plugin/XML/DOM.pm
+Template-Toolkit:Template/Plugin/XML/RSS.pm
+Template-Toolkit:Template/Plugin/XML/Simple.pm
+Template-Toolkit:Template/Plugin/XML/Style.pm
+Template-Toolkit:Template/Plugin/XML/XPath.pm
+Template-Toolkit:Template/Plugins.pm
+Template-Toolkit:Template/Provider.pm
+Template-Toolkit:Template/Service.pm
+Template-Toolkit:Template/Stash.pm
+Template-Toolkit:Template/Stash/Context.pm
+Template-Toolkit:Template/Stash/XS.pm
+Template-Toolkit:Template/Test.pm
+Template-Toolkit:Template/View.pm
+Tie-RegexpHash:Tie/RegexpHash.pm
+UNIVERSAL-moniker:Universal/moniker.pm
+URI:URI.pm
+URI:URI/Escape.pm
+URI:URI/Heuristic.pm
+URI:URI/QueryParam.pm
+URI:URI/Split.pm
+URI:URI/URL.pm
+URI:URI/WithBase.pm
+URI:URI/_foreign.pm
+URI:URI/_generic.pm
+URI:URI/_ldap.pm
+URI:URI/_login.pm
+URI:URI/_query.pm
+URI:URI/_segment.pm
+URI:URI/_server.pm
+URI:URI/_userpass.pm
+URI:URI/data.pm
+URI:URI/file.pm
+URI:URI/file/Base.pm
+URI:URI/file/FAT.pm
+URI:URI/file/Mac.pm
+URI:URI/file/OS2.pm
+URI:URI/file/QNX.pm
+URI:URI/file/Unix.pm
+URI:URI/file/Win32.pm
+URI:URI/ftp.pm
+URI:URI/gopher.pm
+URI:URI/http.pm
+URI:URI/https.pm
+URI:URI/ldap.pm
+URI:URI/ldapi.pm
+URI:URI/ldaps.pm
+URI:URI/mailto.pm
+URI:URI/mms.pm
+URI:URI/news.pm
+URI:URI/nntp.pm
+URI:URI/pop.pm
+URI:URI/rlogin.pm
+URI:URI/rsync.pm
+URI:URI/rtsp.pm
+URI:URI/rtspu.pm
+URI:URI/sip.pm
+URI:URI/sips.pm
+URI:URI/snews.pm
+URI:URI/ssh.pm
+URI:URI/telnet.pm
+URI:URI/tn3270.pm
+URI:URI/urn.pm
+URI:URI/urn/isbn.pm
+URI:URI/urn/oid.pm
+XML-NamespaceSupport:XML/NamespaceSupport.pm
+XML-SAX:XML/SAX.pm
+XML-SAX:XML/SAX/Base.pm
+XML-SAX:XML/SAX/DocumentLocator.pm
+XML-SAX:XML/SAX/Exception.pm
+XML-SAX:XML/SAX/Intro.pod
+XML-SAX:XML/SAX/ParserDetails.ini
+XML-SAX:XML/SAX/ParserFactory.pm
+XML-SAX:XML/SAX/PurePerl.pm
+XML-SAX:XML/SAX/PurePerl/DTDDecls.pm
+XML-SAX:XML/SAX/PurePerl/DebugHandler.pm
+XML-SAX:XML/SAX/PurePerl/DocType.pm
+XML-SAX:XML/SAX/PurePerl/EncodingDetect.pm
+XML-SAX:XML/SAX/PurePerl/Exception.pm
+XML-SAX:XML/SAX/PurePerl/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Productions.pm
+XML-SAX:XML/SAX/PurePerl/Reader.pm
+XML-SAX:XML/SAX/PurePerl/Reader/NoUnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/Reader/Stream.pm
+XML-SAX:XML/SAX/PurePerl/Reader/String.pm
+XML-SAX:XML/SAX/PurePerl/Reader/URI.pm
+XML-SAX:XML/SAX/PurePerl/Reader/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/UnicodeExt.pm
+XML-SAX:XML/SAX/PurePerl/XMLDecl.pm
+XML-SAX:XML/SAX/placeholder.pl
+XML-Simple:XML/Simple.pm
+_slim:Audio/FLAC.pm
+_slim:QuickTime/Movie.pm
+_slim:URI/icy.pm
+_slim:URI/itunesplaylist.pm
+_slim:URI/moodlogicplaylist.pm
diff --git a/audio/squeezecenter/files/patch-Slim_Utils_Prefs.pm b/audio/squeezecenter/files/patch-Slim_Utils_Prefs.pm
index c475b4593af3..866f1c52387a 100644
--- a/audio/squeezecenter/files/patch-Slim_Utils_Prefs.pm
+++ b/audio/squeezecenter/files/patch-Slim_Utils_Prefs.pm
@@ -1,9 +1,27 @@
$FreeBSD$
---- Slim/Utils/Prefs.pm.orig Thu Apr 15 18:09:50 2004
-+++ Slim/Utils/Prefs.pm Thu Apr 15 18:10:44 2004
-@@ -564,7 +564,7 @@
+--- Slim/Utils/Prefs.pm.orig
++++ Slim/Utils/Prefs.pm
+@@ -59,6 +59,8 @@
+ $path = $ENV{'HOME'} . '/Music/Playlists';
+ } elsif (Slim::Utils::OSDetect::OS() eq 'win') {
+ $path = $Bin . '/Playlists';
++ } elsif (Slim::Utils::OSDetect::OS() eq 'unix') {
++ $path = "/var/db/slimserver/playlists";
+ } else {
+ $path = '';
+ }
+@@ -72,7 +74,7 @@
+ if ($os eq 'mac') {
+ $CacheDir = catdir($ENV{'HOME'}, '/Library/Caches/SlimServer');
+ } elsif ($os eq 'unix') {
+- $CacheDir = $ENV{'HOME'};
++ $CacheDir = "/var/db/slimserver/cache";
+ }
+ my @CacheDirs = splitdir($CacheDir);
+ pop @CacheDirs;
+@@ -605,7 +607,7 @@
} elsif (Slim::Utils::OSDetect::OS() eq 'win') {
$prefsPath = $Bin;
} else {
diff --git a/audio/squeezecenter/files/pm2port b/audio/squeezecenter/files/pm2port
new file mode 100644
index 000000000000..9e586a503bbd
--- /dev/null
+++ b/audio/squeezecenter/files/pm2port
@@ -0,0 +1,41 @@
+Audio-Musepack,
+Audio-WMA,Audio/WMA.pm:audio/p5-Audio-WMA
+Audio-Wav,Audio/Wav.pm:audio/p5-Audio-Wav
+Class-Accessor,Class/Accessor.pm:devel/p5-Class-Accessor
+Class-Accessor-Chained,Class/Accessor/Chained.pm:devel/p5-Class-Accessor-Chained
+Class-DBI,Class/DBI.pm:databases/p5-Class-DBI
+Class-DBI-AbstractSearch,Class/DBI/AbstractSearch.pm:databases/p5-Class-DBI-AbstractSearch
+Class-DBI-Pager,Class/DBI/Pager.pm:databases/p5-Class-DBI-Pager
+Class-DBI-Plugin,
+Class-DBI-Plugin-AbstractCount,
+Class-DBI-Plugin-CountSearch,
+Class-DBI-Plugin-RetrieveAll,Class/DBI/Plugin/RetrieveAll.pm:databases/p5-Class-DBI-Plugin-RetrieveAll
+Class-DBI-Cacheable,
+Class-Data-Inheritable,Class/Data/Inheritable.pm:devel/p5-Class-Data-Inheritable
+Class-Trigger,Class/Trigger.pm:devel/p5-Class-Trigger
+Class-WhiteHole,Class/WhiteHole.pm:devel/p5-Class-WhiteHole
+DBIx-ContextualFetch,DBIx/ContextualFetch.pm:databases/p5-DBIx-ContextualFetch
+Date-Page,Data/Page.pm:databases/p5-Data-Page
+File-Spec,File/Spec.pm:devel/p5-File-Spec
+File-Temp,_builtin
+File-Which,File/Which.pm:sysutils/p5-File-Which
+HTML-Parser,${PERL_ARCH}/HTML/Parser.pm:www/p5-HTML-Parser
+IO-String,IO/String.pm:devel/p5-IO-String
+Ima-DBI,Ima/DBI.pm:databases/p5-Ima-DBI
+LWP,Bundle/LWP.pm:www/p5-libwww
+MIME-Base64,${PERL_ARCH}/MIME/Base64.pm:converters/p5-MIME-Base64
+MP3-Info,MP3/Info.pm:audio/p5-MP3-Info
+MP4-Info,
+Net-DNS,Net/DNS/ZoneFile/Fast.pm:dns/p5-Net-DNS-ZoneFile-Fast
+Ogg-Vorbis-Header-PurePerl,
+SQL-Abstract,SQL/Abstract.pm:databases/p5-SQL-Abstract
+SQL-Statement,SQL/Statement.pm:databases/p5-SQL-Statement
+Template-Toolkit,${PERL_ARCH}/Template.pm:www/p5-Template-Toolkit
+Tie-RegexpHash,
+Time-HiRes,${PERL_ARCH}/Time/HiRes.pm:devel/p5-Time-HiRes
+UNIVERSAL-moniker,UNIVERSAL/moniker.pm:devel/p5-UNIVERSAL-moniker
+URI,URI.pm:net/p5-URI
+XML-NamespaceSupport,XML/NamespaceSupport.pm:textproc/p5-XML-NamespaceSupport
+XML-SAX,XML/SAX.pm:textproc/p5-XML-SAX
+XML-Simple,XML/Simple.pm:textproc/p5-XML-Simple
+_slim,
diff --git a/audio/squeezecenter/files/softsqueeze.sh b/audio/squeezecenter/files/softsqueeze.sh
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/squeezecenter/files/softsqueeze.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/squeezecenter/files/softsqueeze.sh.in b/audio/squeezecenter/files/softsqueeze.sh.in
new file mode 100644
index 000000000000..c33b7161cc82
--- /dev/null
+++ b/audio/squeezecenter/files/softsqueeze.sh.in
@@ -0,0 +1,10 @@
+#!/bin/sh
+# This script requires that that java/javavmwrapper port and a JDK
+# version 1.4 or greater be installed.
+#
+# The javavmwrapper port is not installed by default lest the JDK
+# requirement drag this port down into oblivion. Perhaps someday Sun
+# will release the JDK under a license that makes dependencies on the
+# JDK reasionable.
+#
+%%LOCALBASE%%/bin/javavm -jar /usr/local/slimserver/HTML/EN/html/softsqueeze/SoftSqueeze.jar
diff --git a/audio/squeezecenter/pkg-install b/audio/squeezecenter/pkg-install
index aaf7fbd5923d..a4141e4262fa 100644
--- a/audio/squeezecenter/pkg-install
+++ b/audio/squeezecenter/pkg-install
@@ -10,6 +10,7 @@ shell=/sbin/nologin
comment="Slim Devices SlimServer pseudo-user"
statedir=/var/db/slimserver
cachedir=${statedir}/cache
+playlistdir=${statedir}/playlists
pidfile=/var/run/${name}.pid
newsyslogfile=/etc/newsyslog.conf
logfile=/var/log/slimserver.log
@@ -49,6 +50,10 @@ POST-INSTALL)
mkdir -p ${cachedir}
chown -R ${u}:${g} ${cachedir}
fi
+ if [ ! -d ${playlistdir} ]; then
+ mkdir -p ${playlistdir}
+ chown -R ${u}:${g} ${playlistdir}
+ fi
if egrep -q "^${logfile}\>" ${newsyslogfile}; then
echo "Using existing ${newsyslogfile} entry."
else