From 4be9aca94a26b26d51497273036425f6155f1a5c Mon Sep 17 00:00:00 2001 From: Bram Ton Date: Thu, 7 Oct 2021 10:29:09 -0700 Subject: audio/lms: New port: Lightweight music server PR: 258959 --- GIDs | 2 +- UIDs | 2 +- audio/Makefile | 1 + audio/lms/Makefile | 51 +++++++++++++++++++ audio/lms/distinfo | 3 ++ audio/lms/files/lms.in | 31 ++++++++++++ ...tch-src_libs_subsonic_impl_SubsonicResource.hpp | 11 +++++ audio/lms/pkg-descr | 3 ++ audio/lms/pkg-plist | 57 ++++++++++++++++++++++ 9 files changed, 159 insertions(+), 2 deletions(-) create mode 100644 audio/lms/Makefile create mode 100644 audio/lms/distinfo create mode 100644 audio/lms/files/lms.in create mode 100644 audio/lms/files/patch-src_libs_subsonic_impl_SubsonicResource.hpp create mode 100644 audio/lms/pkg-descr create mode 100644 audio/lms/pkg-plist diff --git a/GIDs b/GIDs index 109235222730..fa1aafe1a47d 100644 --- a/GIDs +++ b/GIDs @@ -816,7 +816,7 @@ bitmark:*:872: bitmark-recorder:*:873: librespeed:*:874: # free: 875 -# free: 876 +_lms:*:876: gemserv:*:877: gerbera:*:878: _encrypted-dns:*:879: diff --git a/UIDs b/UIDs index 76d70a455da8..976e69a3f392 100644 --- a/UIDs +++ b/UIDs @@ -821,7 +821,7 @@ bitmark:*:872:872::0:0:Bitmark Property System:/var/lib/bitmarkd:/usr/sbin/nolog bitmark-recorder:*:873:873::0:0:Bitmark Property Recorder:/var/lib/recorderd:/usr/sbin/nologin librespeed:*:874:874::0:0:LibreSpeed user:/nonexistent:/usr/sbin/nologin # free: 875 -# free: 876 +_lms:*:876:876::0:0:Lightweight Music Server user:/nonexistent:/usr/sbin/nologin gemserv:*:877:877::0:0:gemserv user:/nonexistent:/usr/sbin/nologin gerbera:*:878:878::0:0:Gerbera DLNA Media Server:/nonexistent:/usr/sbin/nologin _encrypted-dns:*:879:879::0:0:encrypted-dns user:/var/empty:/usr/sbin/nologin diff --git a/audio/Makefile b/audio/Makefile index 33294914c6ea..6114bf110a07 100644 --- a/audio/Makefile +++ b/audio/Makefile @@ -445,6 +445,7 @@ SUBDIR += liquidsfz SUBDIR += listener SUBDIR += littlefly-lv2 + SUBDIR += lms SUBDIR += lmms SUBDIR += logitechmediaserver SUBDIR += logitechmediaserver-dynamicplaylist diff --git a/audio/lms/Makefile b/audio/lms/Makefile new file mode 100644 index 000000000000..31b4335db1a7 --- /dev/null +++ b/audio/lms/Makefile @@ -0,0 +1,51 @@ +PORTNAME= lms +DISTVERSIONPREFIX= v +DISTVERSION= 3.27.0 +CATEGORIES= audio www + +MAINTAINER= bram@cbbg.nl +COMMENT= Web based music streaming client + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS+= libavutil.so:multimedia/ffmpeg \ + libboost_system.so:devel/boost-libs \ + libconfig.so:devel/libconfig \ + libgtest.so:devel/googletest \ + libtag.so:audio/taglib \ + libwt.so:www/wt +RUN_DEPENDS+= ffmpeg:multimedia/ffmpeg + +USES= cmake compiler:c++17-lang pkgconfig +USE_GITHUB= yes +GH_ACCOUNT= epoupon +USE_RC_SUBR= lms + +OPTIONS_DEFINE= PAM +OPTIONS_SINGLE= IMGLIB +OPTIONS_SINGLE_IMGLIB= GM STB +OPTIONS_DEFAULT= GM PAM + +PAM_DESC= Use the PAM authentication backend +IMGLIB_DESC= Image library backend +GM_DESC= GraphicsMagick++ +STB_DESC= STB single-header file libraries + +PAM_CMAKE_OFF= -DUSE_PAM=OFF +GM_CMAKE_ON= -DIMAGE_LIBRARY=GraphicsMagick++ +STB_CMAKE_ON= -DIMAGE_LIBRARY=STB + +GM_LIB_DEPENDS+= libGraphicsMagick++.so:graphics/GraphicsMagick \ + libGraphicsMagick.so:graphics/GraphicsMagick +STB_BUILD_DEPENDS+= ${LOCALBASE}/include/stb/stb_image.h:devel/stb + +USERS= _lms +GROUPS= _lms + +post-install: + @${MV} ${STAGEDIR}${DATADIR}/lms.conf ${STAGEDIR}${LOCALBASE}/etc/lms.conf.sample + @${MKDIR} ${STAGEDIR}/var/run/${PORTNAME} + @${RM} ${STAGEDIR}${DATADIR}/default.service + +.include diff --git a/audio/lms/distinfo b/audio/lms/distinfo new file mode 100644 index 000000000000..eec02a6198b3 --- /dev/null +++ b/audio/lms/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1632938864 +SHA256 (epoupon-lms-v3.27.0_GH0.tar.gz) = 98be611c05cb2a034c38623d1b739ea3e34760da04be8b0b3ba7e0fbb3baedc1 +SIZE (epoupon-lms-v3.27.0_GH0.tar.gz) = 448749 diff --git a/audio/lms/files/lms.in b/audio/lms/files/lms.in new file mode 100644 index 000000000000..941c0b71296e --- /dev/null +++ b/audio/lms/files/lms.in @@ -0,0 +1,31 @@ +#!/bin/sh + +# PROVIDE: lms +# REQUIRE: LOGIN +# KEYWORD: shutdown + +# Add these lines to /etc/rc.conf +# to enable this service: +# +# lms_enable (bool): Set to NO by default. +# Set it to YES to enable lms. +# lms_config (path): Set to %%PREFIX%%/etc/lms.conf +# by default. + +. /etc/rc.subr + +load_rc_config $name +: ${lms_config:="%%PREFIX/etc/lms.conf"} + +name=lms +rcvar=lms_enable +lms_command="%%PREFIX%%/bin/lms" +lms_args="${lms_config}" +lms_user=lms +lms_group=lms +required_dirs="/var/run/lms" +pidfile="/var/run/lms/${name}.pid" +command="/usr/sbin/daemon" +command_args="-P ${pidfile} -f ${lms_command} ${lms_args}" + +run_rc_command "$1" diff --git a/audio/lms/files/patch-src_libs_subsonic_impl_SubsonicResource.hpp b/audio/lms/files/patch-src_libs_subsonic_impl_SubsonicResource.hpp new file mode 100644 index 000000000000..35dd8d9a4186 --- /dev/null +++ b/audio/lms/files/patch-src_libs_subsonic_impl_SubsonicResource.hpp @@ -0,0 +1,11 @@ +--- src/libs/subsonic/impl/SubsonicResource.hpp.orig 2021-10-02 19:20:11 UTC ++++ src/libs/subsonic/impl/SubsonicResource.hpp +@@ -19,6 +19,8 @@ + #pragma once + + #include ++#include ++ + #include + #include + diff --git a/audio/lms/pkg-descr b/audio/lms/pkg-descr new file mode 100644 index 000000000000..7b65de0e7d4b --- /dev/null +++ b/audio/lms/pkg-descr @@ -0,0 +1,3 @@ +Lightweight Music Server (LMS) is a self-hosted music streaming client +with a sleek web interface. Access your music collection from anywhere using +a web interface. diff --git a/audio/lms/pkg-plist b/audio/lms/pkg-plist new file mode 100644 index 000000000000..a65aed871e5d --- /dev/null +++ b/audio/lms/pkg-plist @@ -0,0 +1,57 @@ +bin/lms +bin/lms-metadata +bin/lms-recommendation +@sample etc/lms.conf.sample +@dir(lms,lms,) /var/run/lms +lib/liblmsauth.so +lib/liblmsav.so +lib/liblmscover.so +lib/liblmsdatabase.so +lib/liblmsmetadata.so +lib/liblmsrecommendation.so +lib/liblmsscanner.so +lib/liblmsscrobbling.so +lib/liblmssom.so +lib/liblmssubsonic.so +lib/liblmsutils.so +%%DATADIR%%/lms +%%DATADIR%%/approot/admin-database.xml +%%DATADIR%%/approot/admin-initwizard.xml +%%DATADIR%%/approot/admin-scannercontroller.xml +%%DATADIR%%/approot/admin-user.xml +%%DATADIR%%/approot/admin-users.xml +%%DATADIR%%/approot/artist.xml +%%DATADIR%%/approot/artists.xml +%%DATADIR%%/approot/error.xml +%%DATADIR%%/approot/explore.xml +%%DATADIR%%/approot/images/unknown-artist.jpg +%%DATADIR%%/approot/images/unknown-cover.jpg +%%DATADIR%%/approot/login.xml +%%DATADIR%%/approot/mediaplayer.xml +%%DATADIR%%/approot/messages.xml +%%DATADIR%%/approot/messages_fr.xml +%%DATADIR%%/approot/messages_it.xml +%%DATADIR%%/approot/messages_zh.xml +%%DATADIR%%/approot/playqueue.xml +%%DATADIR%%/approot/%%CMAKE_BUILD_TYPE%%.xml +%%DATADIR%%/approot/%%CMAKE_BUILD_TYPE%%s.xml +%%DATADIR%%/approot/search.xml +%%DATADIR%%/approot/settings.xml +%%DATADIR%%/approot/templates.xml +%%DATADIR%%/approot/tracks.xml +%%DATADIR%%/docroot/css/S6u8w4BMUTPHjxsAUi-qJCY.woff2 +%%DATADIR%%/docroot/css/S6u8w4BMUTPHjxsAXC-q.woff2 +%%DATADIR%%/docroot/css/S6u9w4BMUTPHh6UVSwaPGR_p.woff2 +%%DATADIR%%/docroot/css/S6u9w4BMUTPHh6UVSwiPGQ.woff2 +%%DATADIR%%/docroot/css/S6uyw4BMUTPHjx4wXg.woff2 +%%DATADIR%%/docroot/css/S6uyw4BMUTPHjxAwXjeu.woff2 +%%DATADIR%%/docroot/css/bootstrap-darkly.min.css +%%DATADIR%%/docroot/css/bootstrap-flatly.min.css +%%DATADIR%%/docroot/css/fonts.css +%%DATADIR%%/docroot/css/lms-darkly.css +%%DATADIR%%/docroot/css/lms-flatly.css +%%DATADIR%%/docroot/css/lms.css +%%DATADIR%%/docroot/js/bootstrap-notify.js +%%DATADIR%%/docroot/js/bootstrap.min.js +%%DATADIR%%/docroot/js/jquery-1.10.2.min.js +%%DATADIR%%/docroot/js/mediaplayer.js -- cgit v1.2.3