diff --git a/multimedia/emby-server/Makefile b/multimedia/emby-server/Makefile index f389ebc675eb..3d21e6bec9ff 100644 --- a/multimedia/emby-server/Makefile +++ b/multimedia/emby-server/Makefile @@ -1,136 +1,136 @@ PORTNAME= emby-server DISTVERSION= 4.7.4.0 +PORTREVISION= 1 CATEGORIES= multimedia -MASTER_SITES= https://github.com/MediaBrowser/Emby.Releases/releases/download/${PORTVERSION}/ \ +MASTER_SITES= https://github.com/MediaBrowser/Emby.Releases/releases/download/${DISTVERSION}/ \ https://mediabrowser.github.io/embytools/ -DISTNAME= embyserver-netframework_${PORTVERSION} -DISTFILES= ${DISTNAME}.zip \ +DISTNAME= emby-server-freebsd13_${DISTVERSION}_amd64 +DISTFILES= ${DISTNAME}.tar.xz \ ffdetect-${FFVERSION}-x64_freebsd13.tar.xz \ ffmpeg-${FFVERSION}.tar.gz \ license.docx DIST_SUBDIR= ${PORTNAME} -EXTRACT_ONLY= ${DISTNAME}.zip \ +EXTRACT_ONLY= ${DISTNAME}.tar.xz \ ffdetect-${FFVERSION}-x64_freebsd13.tar.xz \ ffmpeg-${FFVERSION}.tar.gz MAINTAINER= driesm@FreeBSD.org COMMENT= Media server to organize, play & stream audio/video to various devices LICENSE= UNKNOWN LICENSE_NAME= custom LICENSE_FILE= ${DISTDIR}/${DIST_SUBDIR}/license.docx LICENSE_PERMS= dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept ONLY_FOR_ARCHS= amd64 BUILD_DEPENDS= nasm:devel/nasm \ ${LOCALBASE}/include/CL/opencl.h:devel/opencl LIB_DEPENDS= libaribb24.so:multimedia/aribb24 \ libass.so:multimedia/libass \ libchromaprint.so:audio/chromaprint \ libdav1d.so:multimedia/dav1d \ libdrm.so:graphics/libdrm \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libfribidi.so:converters/fribidi \ libgnutls.so:security/gnutls \ libmfx.so:multimedia/intel-media-sdk \ libOpenCL.so:devel/ocl-icd \ libogg.so:audio/libogg \ libopus.so:audio/opus \ libpng.so:graphics/png \ libraw.so:graphics/libraw \ libtesseract.so:graphics/tesseract \ libtheora.so:multimedia/libtheora \ libva.so:multimedia/libva \ libvorbis.so:audio/libvorbis \ libvpx.so:multimedia/libvpx \ libwebp.so:graphics/webp \ libx264.so:multimedia/libx264 \ libx265.so:multimedia/x265 \ libzvbi.so:devel/libzvbi -RUN_DEPENDS= mono6.8>0:lang/mono6.8 +RUN_DEPENDS= icu>0:devel/icu \ + libinotify>0:devel/libinotify \ + libunwind>0:devel/libunwind -USES= compiler:c11 gmake iconv localbase:ldflags pkgconfig sqlite +USES= compiler:c11 gmake iconv localbase:ldflags pkgconfig sqlite ssl:run USE_RC_SUBR= ${PORTNAME} HAS_CONFIGURE= yes CONFIGURE_ARGS= --cc="${CC}" \ --disable-alsa \ --disable-doc \ --disable-ffplay \ --disable-libxcb \ --disable-outdev=xv \ --disable-sdl2 \ --disable-shared \ --disable-sndio \ --disable-v4l2-m2m \ --disable-vdpau \ --disable-xlib \ --enable-chromaprint \ --enable-fontconfig \ --enable-gnutls \ --enable-gpl \ --enable-iconv \ --enable-libaribb24 \ --enable-libass \ --enable-libdav1d \ --enable-libdrm \ --enable-libfreetype \ --enable-libfribidi \ --enable-libmfx \ --enable-libopus \ --enable-libtesseract \ --enable-libtheora \ --enable-libvorbis \ --enable-libvpx \ --enable-libwebp \ --enable-libx264 \ --enable-libx265 \ --enable-libzvbi \ --enable-opencl \ --enable-optimizations \ --enable-static \ --enable-vaapi \ --enable-version3 MAKE_ENV= V=1 CONFLICTS_INSTALL= emby-server-devel NOPRECIOUSMAKEVARS= yes -SUB_FILES= ImageMagickSharp.dll.config \ - SQLitePCLRaw.provider.sqlite3.dll.config +SUB_FILES= SQLitePCLRaw.provider.sqlite3.dll.config SUB_LIST= GROUP=${GROUPS} \ PORTNAME=${PORTNAME} \ RC_NAME=emby_server \ USER=${USERS} WRKSRC= ${WRKDIR}/ffmpeg-${FFVERSION}_public USERS= emby GROUPS= emby -OPTIONS_DEFINE= LAME X11 -OPTIONS_DEFAULT= LAME X11 +OPTIONS_DEFINE= LAME +OPTIONS_DEFAULT= LAME LAME_LIB_DEPENDS= libmp3lame.so:audio/lame LAME_CONFIGURE_ENABLE= libmp3lame -X11_USES= xorg magick:6 -X11_USES_OFF= magick:6,nox11 -X11_USE= xorg=x11 - FFVERSION= 2022_05_07 do-install: - @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/system - (${INSTALL_DATA} ${WRKDIR}/ImageMagickSharp.dll.config ${STAGEDIR}${PREFIX}/lib/emby-server/system) - (${INSTALL_DATA} ${WRKDIR}/SQLitePCLRaw.provider.sqlite3.dll.config ${STAGEDIR}${PREFIX}/lib/emby-server/system) - (cd ${WRKDIR}/system && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/emby-server/system) @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/bin (${INSTALL_PROGRAM} ${WRKDIR}/bin/ffdetect ${STAGEDIR}${PREFIX}/lib/emby-server/bin) (${INSTALL_PROGRAM} ${WRKSRC}/ffmpeg ${STAGEDIR}${PREFIX}/lib/emby-server/bin) (${INSTALL_PROGRAM} ${WRKSRC}/ffprobe ${STAGEDIR}${PREFIX}/lib/emby-server/bin) + @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/lib + (cd ${WRKDIR}/lib && ${COPYTREE_BIN} . ${STAGEDIR}${PREFIX}/lib/emby-server/lib) + @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/system + (${INSTALL_DATA} ${WRKDIR}/SQLitePCLRaw.provider.sqlite3.dll.config ${STAGEDIR}${PREFIX}/lib/emby-server/system) + (cd ${WRKDIR}/system && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/emby-server/system "! -name EmbyServer") + (${INSTALL_PROGRAM} ${WRKDIR}/system/EmbyServer ${STAGEDIR}${PREFIX}/lib/emby-server/system) .include diff --git a/multimedia/emby-server/distinfo b/multimedia/emby-server/distinfo index 91b159c6ed88..c1b2481994d5 100644 --- a/multimedia/emby-server/distinfo +++ b/multimedia/emby-server/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1655841941 -SHA256 (emby-server/embyserver-netframework_4.7.4.0.zip) = 54bfc346e0dfe5f3555c99d9694358ba894404a4c0fb5cd0ee116eb7577b0885 -SIZE (emby-server/embyserver-netframework_4.7.4.0.zip) = 48592708 +TIMESTAMP = 1655843203 +SHA256 (emby-server/emby-server-freebsd13_4.7.4.0_amd64.tar.xz) = 06d376024199c2d01bdd16e07688d2eaac9a11660f7456e5334e904b7556716b +SIZE (emby-server/emby-server-freebsd13_4.7.4.0_amd64.tar.xz) = 38923476 SHA256 (emby-server/ffdetect-2022_05_07-x64_freebsd13.tar.xz) = 88e82f76e5e82568bdd7800ec5c6d5c05d33c4c951dae0712d078112cee80e64 SIZE (emby-server/ffdetect-2022_05_07-x64_freebsd13.tar.xz) = 75308 SHA256 (emby-server/ffmpeg-2022_05_07.tar.gz) = 44506c7c4fa41c721819f9b530b021e11921ea2a1332ce947d8af5a06a2df01e SIZE (emby-server/ffmpeg-2022_05_07.tar.gz) = 14301915 SHA256 (emby-server/license.docx) = a6d7ea65dcb06392479a85e1a10a7aeb872d803da6f784f6935fcd4ee63008c6 SIZE (emby-server/license.docx) = 18373 diff --git a/multimedia/emby-server/files/ImageMagickSharp.dll.config.in b/multimedia/emby-server/files/ImageMagickSharp.dll.config.in deleted file mode 100644 index 1c89d61bd056..000000000000 --- a/multimedia/emby-server/files/ImageMagickSharp.dll.config.in +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/multimedia/emby-server/files/emby-server.in b/multimedia/emby-server/files/emby-server.in index 1c35ab072390..50ddd780a819 100644 --- a/multimedia/emby-server/files/emby-server.in +++ b/multimedia/emby-server/files/emby-server.in @@ -1,69 +1,79 @@ #!/bin/sh # PROVIDE: %%PORTNAME%% # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf.local or /etc/rc.conf # to enable this service: # # %%RC_NAME%%_enable: Set to yes to enable the %%PORTNAME%% service. # Default: no # %%RC_NAME%%_user: The user account used to run the %%PORTNAME%% daemon. # This is optional, however do not specifically set this to an # empty string as this will cause the daemon to run as root. # Default: %%USER%% # %%RC_NAME%%_group: The group account used to run the %%PORTNAME%% daemon. # This is optional, however do not specifically set this to an # empty string as this will cause the daemon to run with group wheel. # Default: %%GROUP%% # %%RC_NAME%%_data_dir: Directory where %%PORTNAME%% configuration # data is stored. # Default: /var/db/%%PORTNAME%% # %%RC_NAME%%_ffdetect: Path of the ffdetect binary. # Default: %%PREFIX%%/lib/emby-server/bin/ffdetect # %%RC_NAME%%_ffmpeg: Path of the ffmpeg binary. # Default: %%PREFIX%%/lib/emby-server/bin/ffmpeg # %%RC_NAME%%_ffprobe: Path of the ffprobe binary. # Default: %%PREFIX%%/lib/emby-server/bin/ffprobe # %%RC_NAME%%_pid: Path of the pid file. # Default: /var/run/%%PORTNAME%%.pid . /etc/rc.subr name=%%RC_NAME%% rcvar=${name}_enable load_rc_config ${name} : ${%%RC_NAME%%_enable:="no"} : ${%%RC_NAME%%_user:="%%USER%%"} : ${%%RC_NAME%%_group:="%%GROUP%%"} : ${%%RC_NAME%%_data_dir:="/var/db/%%PORTNAME%%"} : ${%%RC_NAME%%_ffdetect:="%%PREFIX%%/lib/emby-server/bin/ffdetect"} : ${%%RC_NAME%%_ffmpeg:="%%PREFIX%%/lib/emby-server/bin/ffmpeg"} : ${%%RC_NAME%%_ffprobe:="%%PREFIX%%/lib/emby-server/bin/ffprobe"} : ${%%RC_NAME%%_pid:="/var/run/%%PORTNAME%%.pid"} pidfile="${%%RC_NAME%%_pid}" -procname="%%LOCALBASE%%/bin/mono" +procname="%%PREFIX%%/lib/emby-server/system/EmbyServer" command="/usr/sbin/daemon" -command_args="-f -p ${%%RC_NAME%%_pid} ${procname} %%PREFIX%%/lib/emby-server/system/EmbyServer.exe \ +command_args="-f -p ${%%RC_NAME%%_pid} ${procname} \ -os freebsd \ -ffdetect ${%%RC_NAME%%_ffdetect} \ -ffmpeg ${%%RC_NAME%%_ffmpeg} \ -ffprobe ${%%RC_NAME%%_ffprobe} \ -programdata ${%%RC_NAME%%_data_dir}" start_precmd=%%RC_NAME%%_precmd %%RC_NAME%%_precmd() { [ -f ${%%RC_NAME%%_pid} ] || install -g ${%%RC_NAME%%_group} -o ${%%RC_NAME%%_user} -- /dev/null ${%%RC_NAME%%_pid} [ -d ${%%RC_NAME%%_data_dir} ] || install -d -g ${%%RC_NAME%%_group} -o ${%%RC_NAME%%_user} -- ${%%RC_NAME%%_data_dir} + + # .NET 6+ use dual mode sockets to avoid the separate AF handling. + # disable .NET use of V6 if no ipv6 is configured. + # See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259194#c17 + ifconfig | grep -q inet6 + if [ $? == 1 ]; then + export DOTNET_SYSTEM_NET_DISABLEIPV6=1 + fi + + export LD_LIBRARY_PATH=%%PREFIX%%/lib/emby-server/lib:%%LOCALBASE%%/lib } stop_postcmd=%%RC_NAME%%_postcmd %%RC_NAME%%_postcmd() { rm -f ${%%RC_NAME%%_pid} } run_rc_command "$1" diff --git a/multimedia/emby-server/pkg-message b/multimedia/emby-server/pkg-message index bc5db49c7090..6a7b4a48c799 100644 --- a/multimedia/emby-server/pkg-message +++ b/multimedia/emby-server/pkg-message @@ -1,14 +1,17 @@ [ { type: install message: <