diff --git a/multimedia/Makefile b/multimedia/Makefile index 768f4da7d412..7de10a014776 100644 --- a/multimedia/Makefile +++ b/multimedia/Makefile @@ -1,448 +1,449 @@ COMMENT = Multimedia software SUBDIR += Bento4 SUBDIR += QtAV SUBDIR += ab25 SUBDIR += acidrip SUBDIR += aegisub SUBDIR += aom SUBDIR += aravis SUBDIR += arcan SUBDIR += assimp SUBDIR += atomicparsley SUBDIR += audacious SUBDIR += audacious-plugins SUBDIR += avidemux SUBDIR += avidemux-cli SUBDIR += avidemux-plugins SUBDIR += avidemux-qt5 SUBDIR += avinfo SUBDIR += baka-mplayer SUBDIR += bcmatroska2 SUBDIR += bino SUBDIR += bitstream SUBDIR += blind SUBDIR += bsdbktr_tvtune SUBDIR += butt SUBDIR += camserv SUBDIR += ccextractor SUBDIR += cclive SUBDIR += celluloid SUBDIR += cheese SUBDIR += chilitags SUBDIR += clive SUBDIR += clutter-gst SUBDIR += clutter-gst3 SUBDIR += cmrt SUBDIR += cmrtlib SUBDIR += cx88 SUBDIR += dav1d SUBDIR += deforaos-player SUBDIR += dirac SUBDIR += dragon SUBDIR += dtv-scan-tables SUBDIR += dumpmpeg SUBDIR += dv2sub SUBDIR += dvb-apps SUBDIR += dvbcut SUBDIR += dvbsnoop SUBDIR += dvd-slideshow SUBDIR += dvdauthor SUBDIR += dvdid SUBDIR += dvdread SUBDIR += dvdrip SUBDIR += dvdstyler SUBDIR += elementary-videos SUBDIR += emby-server SUBDIR += emovix SUBDIR += ffaudioconverter SUBDIR += ffdec SUBDIR += ffmpeg SUBDIR += ffmpeg2theora SUBDIR += ffmpegthumbnailer SUBDIR += ffms2 SUBDIR += filebot SUBDIR += flvmeta SUBDIR += flvstreamer SUBDIR += flvtool++ SUBDIR += fpc-dts SUBDIR += fpc-libvlc SUBDIR += fxtv SUBDIR += gaupol SUBDIR += gavl SUBDIR += gdialog SUBDIR += get_iplayer SUBDIR += gmerlin SUBDIR += gmmlib SUBDIR += gmp-api SUBDIR += gmtk SUBDIR += gnome-mplayer SUBDIR += gnome-twitch SUBDIR += gpac-libgpac SUBDIR += gpac-mp4box SUBDIR += gpodder SUBDIR += grake SUBDIR += gst123 SUBDIR += gstreamer1 SUBDIR += gstreamer1-editing-services SUBDIR += gstreamer1-libav SUBDIR += gstreamer1-plugins SUBDIR += gstreamer1-plugins-all SUBDIR += gstreamer1-plugins-aom SUBDIR += gstreamer1-plugins-assrender SUBDIR += gstreamer1-plugins-bad SUBDIR += gstreamer1-plugins-core SUBDIR += gstreamer1-plugins-dash SUBDIR += gstreamer1-plugins-dts SUBDIR += gstreamer1-plugins-dv SUBDIR += gstreamer1-plugins-dvdread SUBDIR += gstreamer1-plugins-gnonlin SUBDIR += gstreamer1-plugins-good SUBDIR += gstreamer1-plugins-hls SUBDIR += gstreamer1-plugins-kate SUBDIR += gstreamer1-plugins-libde265 SUBDIR += gstreamer1-plugins-mpeg2dec SUBDIR += gstreamer1-plugins-mpeg2enc SUBDIR += gstreamer1-plugins-mplex SUBDIR += gstreamer1-plugins-msdk SUBDIR += gstreamer1-plugins-openh264 SUBDIR += gstreamer1-plugins-resindvd SUBDIR += gstreamer1-plugins-rtmp SUBDIR += gstreamer1-plugins-smoothstreaming SUBDIR += gstreamer1-plugins-svt-av1 SUBDIR += gstreamer1-plugins-svt-hevc SUBDIR += gstreamer1-plugins-svt-vp9 SUBDIR += gstreamer1-plugins-theora SUBDIR += gstreamer1-plugins-ttml SUBDIR += gstreamer1-plugins-ugly SUBDIR += gstreamer1-plugins-v4l2 SUBDIR += gstreamer1-plugins-vpx SUBDIR += gstreamer1-plugins-x264 SUBDIR += gstreamer1-plugins-x265 SUBDIR += gstreamer1-qt SUBDIR += gstreamer1-rtsp-server SUBDIR += gstreamer1-transcoder SUBDIR += gstreamer1-vaapi SUBDIR += gstreamer1-validate SUBDIR += gstreamermm SUBDIR += gtk-youtube-viewer SUBDIR += gxine SUBDIR += handbrake SUBDIR += harvid SUBDIR += hypnotix SUBDIR += imagination SUBDIR += intel-media-sdk SUBDIR += iriverter SUBDIR += iso2mkv SUBDIR += jmref SUBDIR += kaffeine SUBDIR += kamoso SUBDIR += kdemultimedia SUBDIR += kdemultimedia-ffmpegthumbs SUBDIR += kdenlive SUBDIR += kf5-kmediaplayer SUBDIR += kmplayer SUBDIR += kodi SUBDIR += kodi-addon-inputstream.adaptive SUBDIR += kodi-addon-peripheral.joystick SUBDIR += kodi-addon-pvr.hts SUBDIR += kodi-addon-pvr.iptvsimple SUBDIR += kodi-addon-screensaver.biogenesis SUBDIR += kodi-addon-screensaver.matrixtrails SUBDIR += kodi-addon-screensaver.stars SUBDIR += kodi-addon-visualization.fishbmc SUBDIR += kodi-addon-visualization.shadertoy SUBDIR += kodi-addon-visualization.spectrum SUBDIR += kvazaar SUBDIR += l-smash SUBDIR += libaacs SUBDIR += libass SUBDIR += libav SUBDIR += libbdplus SUBDIR += libbluray SUBDIR += libcec SUBDIR += libdc1394 SUBDIR += libdca SUBDIR += libdcadec SUBDIR += libde265 SUBDIR += libdv SUBDIR += libdvbcsa SUBDIR += libdvbpsi SUBDIR += libdvdcss SUBDIR += libdvdnav SUBDIR += libdvdread SUBDIR += libfame SUBDIR += libgav1 SUBDIR += libhdhomerun SUBDIR += libkate SUBDIR += libmatroska SUBDIR += libmediaart SUBDIR += libmediainfo SUBDIR += libmpeg2 SUBDIR += libmpeg3 SUBDIR += libmtp SUBDIR += libndi SUBDIR += libopenshot SUBDIR += libquicktime SUBDIR += libquicktime-lame SUBDIR += libquvi SUBDIR += libquvi-scripts SUBDIR += libquvi-scripts09 SUBDIR += libquvi09 SUBDIR += librav1e SUBDIR += librespot SUBDIR += librist SUBDIR += librtmp SUBDIR += libtheora SUBDIR += libtuner SUBDIR += libuvc SUBDIR += libv4l SUBDIR += libva SUBDIR += libva-glx SUBDIR += libva-intel-driver SUBDIR += libva-intel-hybrid-driver SUBDIR += libva-intel-media-driver SUBDIR += libva-utils SUBDIR += libva-vdpau-driver SUBDIR += libvdpau SUBDIR += libvdpau-va-gl SUBDIR += libvlcpp SUBDIR += libvpx SUBDIR += libx264 SUBDIR += libxine SUBDIR += libxspf SUBDIR += libzen SUBDIR += linux-c7-libtheora SUBDIR += linux-c7-libv4l SUBDIR += linux-tsmuxer SUBDIR += linux_dvbwrapper-kmod SUBDIR += livego SUBDIR += lives SUBDIR += livestreamer + SUBDIR += lms SUBDIR += lsdvd SUBDIR += m2tstoavi SUBDIR += m2vrequantiser SUBDIR += makemkv SUBDIR += mediainfo SUBDIR += mencoder SUBDIR += minisatip SUBDIR += minitube SUBDIR += mjpegtools SUBDIR += mkclean SUBDIR += mkvalidator SUBDIR += mkvtoolnix SUBDIR += mkxvcd SUBDIR += mlt SUBDIR += mlt-qt5 SUBDIR += mmsclient SUBDIR += mmsrip SUBDIR += motion SUBDIR += mp3cd SUBDIR += mp4v2 SUBDIR += mpc-qt SUBDIR += mpeg2codec SUBDIR += mpeg2play SUBDIR += mpeg_encode SUBDIR += mpeg_play SUBDIR += mpeg_stat SUBDIR += mpgtx SUBDIR += mplayer SUBDIR += mplayer-skins SUBDIR += mplex SUBDIR += mps-youtube SUBDIR += mpv SUBDIR += mpv-mpris SUBDIR += mpvpaper SUBDIR += msdl SUBDIR += msopenh264 SUBDIR += mswebrtc SUBDIR += musikcube SUBDIR += mxflib SUBDIR += mythtv SUBDIR += mythtv-frontend SUBDIR += naludump SUBDIR += nordlicht SUBDIR += nostt SUBDIR += obs-audio-spectralizer SUBDIR += obs-ndi SUBDIR += obs-qtwebkit SUBDIR += obs-scrab SUBDIR += obs-streamfx SUBDIR += obs-studio SUBDIR += obs-transition-matrix SUBDIR += obs-v4l2sink SUBDIR += obs-websocket SUBDIR += oggvideotools SUBDIR += ogmrip SUBDIR += ogmtools SUBDIR += olive SUBDIR += omxplayer SUBDIR += openh264 SUBDIR += openshot SUBDIR += opentoonz SUBDIR += oscam SUBDIR += p5-Audio-M4P SUBDIR += p5-FFmpeg-Command SUBDIR += p5-FLV-Info SUBDIR += p5-File-Format-RIFF SUBDIR += p5-MP4-Info SUBDIR += p5-Net-UPnP SUBDIR += p5-Subtitles SUBDIR += p5-Umph-Prompt SUBDIR += pHash SUBDIR += peek SUBDIR += phonon SUBDIR += phonon-designerplugin SUBDIR += phonon-gstreamer SUBDIR += phonon-vlc SUBDIR += photofilmstrip SUBDIR += php-pHash SUBDIR += pipewire SUBDIR += pitivi SUBDIR += playerctl SUBDIR += plexmediaserver SUBDIR += plexmediaserver-plexpass SUBDIR += podcastdl SUBDIR += poe SUBDIR += ppm2fli SUBDIR += projectx SUBDIR += ptx-kmod SUBDIR += pwcbsd SUBDIR += pwcview SUBDIR += py-PySceneDetect SUBDIR += py-av SUBDIR += py-cec SUBDIR += py-enzyme SUBDIR += py-ffmpeg-python SUBDIR += py-gstreamer1 SUBDIR += py-guessit SUBDIR += py-librtmp SUBDIR += py-mido SUBDIR += py-mlt SUBDIR += py-moviepy SUBDIR += py-periscope SUBDIR += py-pretty_midi SUBDIR += py-pymediainfo SUBDIR += py-qt5-multimedia SUBDIR += py-qt5-multimediawidgets SUBDIR += py-soco SUBDIR += py-subliminal SUBDIR += py-tvnamer SUBDIR += qmmp-plugin-pack-qt5 SUBDIR += qmmp-qt5 SUBDIR += qt-faststart SUBDIR += qt5-multimedia SUBDIR += quodlibet SUBDIR += quvi SUBDIR += quvi09 SUBDIR += qwinff SUBDIR += rage SUBDIR += rav1e SUBDIR += recmpeg SUBDIR += recordmydesktop SUBDIR += replex SUBDIR += rtmpdump SUBDIR += rubygem-av SUBDIR += rubygem-clutter-gstreamer SUBDIR += rubygem-flvtool2 SUBDIR += rubygem-gstreamer SUBDIR += rubygem-paperclip-av-transcoder SUBDIR += rubygem-paperclip-av-transcoder-rails50 SUBDIR += rubygem-streamio-ffmpeg SUBDIR += sabbu SUBDIR += schroedinger SUBDIR += shotcut SUBDIR += simplescreenrecorder SUBDIR += smpeg SUBDIR += smpeg2 SUBDIR += smplayer SUBDIR += smplayer-skins SUBDIR += smplayer-themes SUBDIR += sms1xxx-kmod SUBDIR += smtube SUBDIR += snapcast SUBDIR += snappy SUBDIR += spigot SUBDIR += spook SUBDIR += streamlink SUBDIR += subsync SUBDIR += subtitlecomposer SUBDIR += subtitleoffsetmodifier SUBDIR += subtitleripper SUBDIR += subtools SUBDIR += svt-av1 SUBDIR += svt-hevc SUBDIR += svt-vp9 SUBDIR += syncplay SUBDIR += szap-s2 SUBDIR += tautulli SUBDIR += tcmplex-panteltje SUBDIR += termplay SUBDIR += tinyobjloader SUBDIR += tivodecode SUBDIR += totem SUBDIR += totem-pl-parser SUBDIR += transcode SUBDIR += tstools SUBDIR += tvheadend SUBDIR += umph SUBDIR += ustreamer SUBDIR += v4l-utils SUBDIR += v4l_compat SUBDIR += vamps SUBDIR += vapoursynth SUBDIR += vapoursynth-l-smash-works SUBDIR += vapoursynth-vmaf SUBDIR += vcdgear SUBDIR += vcdimager SUBDIR += vdpauinfo SUBDIR += vdr SUBDIR += vdr-plugin-control SUBDIR += vdr-plugin-eepg SUBDIR += vdr-plugin-epgsearch SUBDIR += vdr-plugin-extrecmenu SUBDIR += vdr-plugin-femon SUBDIR += vdr-plugin-infosatepg SUBDIR += vdr-plugin-iptv SUBDIR += vdr-plugin-markad SUBDIR += vdr-plugin-osdpip SUBDIR += vdr-plugin-osdteletext SUBDIR += vdr-plugin-reelchannelscan SUBDIR += vdr-plugin-remote SUBDIR += vdr-plugin-skinenigmang SUBDIR += vdr-plugin-sleeptimer SUBDIR += vdr-plugin-streamdev SUBDIR += vdr-plugin-ttxtsubs SUBDIR += vdr-plugin-vdrmanager SUBDIR += vdr-plugin-vnsiserver SUBDIR += vdr-plugin-wirbelscan SUBDIR += vdr-plugin-xineliboutput SUBDIR += vdr-plugin-xvdr SUBDIR += vdr-plugins SUBDIR += vid.stab SUBDIR += vlc SUBDIR += vmaf SUBDIR += vtkmpeg2encode SUBDIR += vvdec SUBDIR += w_scan2 SUBDIR += webcamd SUBDIR += webcamoid SUBDIR += webvfx-qt5 SUBDIR += wf-recorder SUBDIR += win32-codecs SUBDIR += winff SUBDIR += wlrobs SUBDIR += x264 SUBDIR += x265 SUBDIR += xanim SUBDIR += xawtv SUBDIR += xfce4-parole SUBDIR += xine SUBDIR += xporthdmv SUBDIR += xvid SUBDIR += yamdi SUBDIR += ytfzf SUBDIR += zart SUBDIR += zoneminder .include diff --git a/multimedia/lms/Makefile b/multimedia/lms/Makefile new file mode 100644 index 000000000000..5bbc4345c321 --- /dev/null +++ b/multimedia/lms/Makefile @@ -0,0 +1,43 @@ +PORTNAME= lms +DISTVERSION= 3.25.0 +MASTER_SITES= https://github.com/epoupon/lms/archive/refs/tags/v${DISTVERSION}${EXTRACT_SUFX}?dummy=/ +CATEGORIES= multimedia + +PATCH_SITES= https://github.com/epoupon/lms/commit/ +PATCHFILES+= b45b30ded44bb49865bbce7b43612f36043126ea.patch:-p1 # backport of fix of missing includes: https://github.com/epoupon/lms/commit/b45b30ded44bb49865bbce7b43612f36043126ea + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Lightweight Music Server + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \ + libboost_system.so:devel/boost-libs \ + libconfig++.so:devel/libconfig \ + libtag.so:audio/taglib \ + libwthttp.so:www/wt +RUN_DEPENDS= ffmpeg:multimedia/ffmpeg + +USES= cmake compiler:c++17-lang pkgconfig + +USER= nobody +GROUP= nobody +SUB_LIST= USER=${USER} +USE_RC_SUBR= ${PORTNAME} + +PLIST_SUB= USER="${USER}" GROUP="${GROUP}" + +post-patch: + @${REINPLACE_CMD} -e 's|"/etc/lms.conf"|"${PREFIX}/etc/lms.conf"|' \ + ${WRKSRC}/src/lms/main.cpp \ + ${WRKSRC}/src/tools/cover/LmsCover.cpp \ + ${WRKSRC}/src/tools/recommendation/LmsRecommendation.cpp + @${REINPLACE_CMD} -e 's|"/usr/|"${PREFIX}/|; s|"/var/lms/"|"/var/db/lms/"|' \ + ${WRKSRC}/conf/lms.conf + +post-install: + ${RLN} ${STAGEDIR}${DATADIR}/lms.conf ${STAGEDIR}${PREFIX}/etc/lms.conf.sample + ${MKDIR} ${STAGEDIR}/var/db/lms + +.include diff --git a/multimedia/lms/distinfo b/multimedia/lms/distinfo new file mode 100644 index 000000000000..1490583a7664 --- /dev/null +++ b/multimedia/lms/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1619374810 +SHA256 (lms-3.25.0.tar.gz) = c27bf7d7fa994b3422c9773c2303df8fa078f35343326471ea4803cb0f5f872e +SIZE (lms-3.25.0.tar.gz) = 431516 +SHA256 (b45b30ded44bb49865bbce7b43612f36043126ea.patch) = a792b3cbd7ccb366ffeed8e85c616cd6f96dc55781bb00867aeda61018737f98 +SIZE (b45b30ded44bb49865bbce7b43612f36043126ea.patch) = 1751 diff --git a/multimedia/lms/files/lms.in b/multimedia/lms/files/lms.in new file mode 100644 index 000000000000..d00453820264 --- /dev/null +++ b/multimedia/lms/files/lms.in @@ -0,0 +1,25 @@ +#!/bin/sh + +# PROVIDE: lms +# REQUIRE: DAEMON NETWORKING +# KEYWORD: shutdown + +# Add the following lines to /etc/rc.conf to enable lms: +# lms_enable : set to "YES" to enable the daemon, default is "NO" + +. /etc/rc.subr + +name=lms +rcvar=lms_enable + +load_rc_config $name + +lms_enable=${lms_enable:-"NO"} + +logfile="/var/log/${name}.log" + +procname=%%PREFIX%%/bin/lms +command="/usr/sbin/daemon" +command_args="-u %%USER%% -o ${logfile} -t ${name} %%PREFIX%%/bin/lms" + +run_rc_command "$1" diff --git a/multimedia/lms/files/patch-src_libs_utils_impl_ChildProcess.cpp b/multimedia/lms/files/patch-src_libs_utils_impl_ChildProcess.cpp new file mode 100644 index 000000000000..52046a1b918a --- /dev/null +++ b/multimedia/lms/files/patch-src_libs_utils_impl_ChildProcess.cpp @@ -0,0 +1,18 @@ +--- src/libs/utils/impl/ChildProcess.cpp.orig 2021-04-25 18:33:13 UTC ++++ src/libs/utils/impl/ChildProcess.cpp +@@ -68,6 +68,7 @@ ChildProcess::ChildProcess(boost::asio::io_context& io + if (res < 0) + throw SystemException {errno, "pipe2 failed!"}; + ++#if !defined(__FreeBSD__) // see https://github.com/epoupon/lms/issues/144 + { + const std::size_t pipeSize {65536*8}; + +@@ -77,6 +78,7 @@ ChildProcess::ChildProcess(boost::asio::io_context& io + if (fcntl(pipe[1], F_SETPIPE_SZ, pipeSize) == -1) + throw SystemException {errno, "fcntl failed!"}; + } ++#endif + + res = fork(); + if (res == -1) diff --git a/multimedia/lms/pkg-descr b/multimedia/lms/pkg-descr new file mode 100644 index 000000000000..626c00c006b6 --- /dev/null +++ b/multimedia/lms/pkg-descr @@ -0,0 +1,4 @@ +LMS is a self-hosted music streaming software: it allows users to access their +music collections from anywhere using a web interface. + +WWW: https://github.com/epoupon/lms diff --git a/multimedia/lms/pkg-message b/multimedia/lms/pkg-message new file mode 100644 index 000000000000..49fd5d65b1d8 --- /dev/null +++ b/multimedia/lms/pkg-message @@ -0,0 +1,11 @@ +[ +{ type: install + message: <