git: 3798faabce82 - main - muLtimedia/emby-server: convert to embedded .NET

From: Dries Michiels <driesm_at_FreeBSD.org>
Date: Thu, 23 Jun 2022 18:08:22 UTC
The branch main has been updated by driesm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3798faabce82046d77a99bc961b09dd6b65f973f

commit 3798faabce82046d77a99bc961b09dd6b65f973f
Author:     Dries Michiels <driesm@FreeBSD.org>
AuthorDate: 2022-06-21 20:21:15 +0000
Commit:     Dries Michiels <driesm@FreeBSD.org>
CommitDate: 2022-06-23 18:07:49 +0000

    muLtimedia/emby-server: convert to embedded .NET
    
    Similar to the *rr ports under the net-p2p category, Emby is also
    converting their mono binaries to .NET. We expect that in the future we
    will be able to use an official runtime port of .NET to run the
    EmbyServer binary. This transition also replaces ImageMagick with
    embedded SkiaSharp.
---
 multimedia/emby-server/Makefile                    |  36 +--
 multimedia/emby-server/distinfo                    |   6 +-
 .../files/ImageMagickSharp.dll.config.in           |   3 -
 multimedia/emby-server/files/emby-server.in        |  14 +-
 multimedia/emby-server/pkg-message                 |   3 +
 multimedia/emby-server/pkg-plist                   | 272 +++++++++++++++++----
 6 files changed, 264 insertions(+), 70 deletions(-)

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,15 +1,16 @@
 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
 
@@ -49,9 +50,11 @@ LIB_DEPENDS=	libaribb24.so:multimedia/aribb24 \
 		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
@@ -99,8 +102,7 @@ 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 \
@@ -111,26 +113,24 @@ 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 <bsd.port.mk>
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,6 +1,6 @@
-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
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 @@
-<configuration>
-  <dllmap dll="CORE_RL_Wand_" target="%%LOCALBASE%%/lib/libMagickWand-6.so" os="freebsd"/>
-</configuration>
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
@@ -44,9 +44,9 @@ load_rc_config ${name}
 : ${%%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} \
@@ -58,6 +58,16 @@ start_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
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
@@ -9,6 +9,9 @@ To then manually start Emby Server without rebooting:
 
 Once started, visit the following webpage to configure:
 http://localhost:8096/
+
+If you are running emby-server in a jail, set "allow.mlock"
+for this jail otherwise the program will fail to start.
 EOM
 }
 ]
diff --git a/multimedia/emby-server/pkg-plist b/multimedia/emby-server/pkg-plist
index abb79cab2b96..c5b4b94203ec 100644
--- a/multimedia/emby-server/pkg-plist
+++ b/multimedia/emby-server/pkg-plist
@@ -1,125 +1,211 @@
 lib/emby-server/bin/ffdetect
 lib/emby-server/bin/ffmpeg
 lib/emby-server/bin/ffprobe
+lib/emby-server/lib/libSkiaSharp.so
+lib/emby-server/lib/libSkiaSharp.so.2
+lib/emby-server/lib/libSkiaSharp.so.80.2
 lib/emby-server/system/Emby.ActivityLog.dll
-lib/emby-server/system/Emby.ActivityLog.pdb
 lib/emby-server/system/Emby.Api.dll
-lib/emby-server/system/Emby.Api.pdb
+lib/emby-server/system/Emby.Codecs.Dxva.dll
 lib/emby-server/system/Emby.Codecs.dll
-lib/emby-server/system/Emby.Codecs.pdb
-lib/emby-server/system/Emby.Drawing.ImageMagick.dll
-lib/emby-server/system/Emby.Drawing.ImageMagick.pdb
 lib/emby-server/system/Emby.Drawing.Skia.dll
-lib/emby-server/system/Emby.Drawing.Skia.pdb
 lib/emby-server/system/Emby.Drawing.dll
-lib/emby-server/system/Emby.Drawing.pdb
 lib/emby-server/system/Emby.Ffmpeg.Base.dll
-lib/emby-server/system/Emby.Ffmpeg.Base.pdb
 lib/emby-server/system/Emby.Ffmpeg.Lib.dll
-lib/emby-server/system/Emby.Ffmpeg.Lib.pdb
 lib/emby-server/system/Emby.Ffmpeg.dll
-lib/emby-server/system/Emby.Ffmpeg.pdb
 lib/emby-server/system/Emby.LiveTV.dll
-lib/emby-server/system/Emby.LiveTV.pdb
 lib/emby-server/system/Emby.LocalMetadata.dll
-lib/emby-server/system/Emby.LocalMetadata.pdb
 lib/emby-server/system/Emby.Media.Model.dll
-lib/emby-server/system/Emby.Media.Model.pdb
 lib/emby-server/system/Emby.Naming.dll
-lib/emby-server/system/Emby.Naming.pdb
 lib/emby-server/system/Emby.Notifications.dll
-lib/emby-server/system/Emby.Notifications.pdb
 lib/emby-server/system/Emby.Photos.dll
-lib/emby-server/system/Emby.Photos.pdb
 lib/emby-server/system/Emby.ProcessRun.dll
-lib/emby-server/system/Emby.ProcessRun.pdb
 lib/emby-server/system/Emby.Providers.dll
-lib/emby-server/system/Emby.Providers.pdb
 lib/emby-server/system/Emby.Server.Connect.dll
-lib/emby-server/system/Emby.Server.Connect.pdb
 lib/emby-server/system/Emby.Server.Implementations.dll
-lib/emby-server/system/Emby.Server.Implementations.pdb
 lib/emby-server/system/Emby.Server.MediaEncoding.dll
-lib/emby-server/system/Emby.Server.MediaEncoding.pdb
 lib/emby-server/system/Emby.Server.Sync.dll
-lib/emby-server/system/Emby.Server.Sync.pdb
 lib/emby-server/system/Emby.Sqlite.dll
-lib/emby-server/system/Emby.Sqlite.pdb
 lib/emby-server/system/Emby.Web.GenericEdit.dll
-lib/emby-server/system/Emby.Web.GenericEdit.pdb
 lib/emby-server/system/Emby.Web.dll
-lib/emby-server/system/Emby.Web.pdb
-lib/emby-server/system/EmbyServer.exe
-lib/emby-server/system/EmbyServer.exe.config
-lib/emby-server/system/EmbyServer.pdb
-lib/emby-server/system/ImageMagickSharp.dll
-lib/emby-server/system/ImageMagickSharp.dll.config
+lib/emby-server/system/EmbyServer
+lib/emby-server/system/EmbyServer.deps.json
+lib/emby-server/system/EmbyServer.dll
+lib/emby-server/system/EmbyServer.runtimeconfig.json
 lib/emby-server/system/MediaBrowser.Common.dll
-lib/emby-server/system/MediaBrowser.Common.pdb
 lib/emby-server/system/MediaBrowser.Controller.dll
-lib/emby-server/system/MediaBrowser.Controller.pdb
 lib/emby-server/system/MediaBrowser.Model.dll
-lib/emby-server/system/MediaBrowser.Model.pdb
-lib/emby-server/system/Microsoft.Bcl.AsyncInterfaces.dll
+lib/emby-server/system/Microsoft.AspNetCore.Antiforgery.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authentication.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authentication.Cookies.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authentication.Core.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authentication.OAuth.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authentication.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authorization.Policy.dll
+lib/emby-server/system/Microsoft.AspNetCore.Authorization.dll
+lib/emby-server/system/Microsoft.AspNetCore.Components.Authorization.dll
+lib/emby-server/system/Microsoft.AspNetCore.Components.Forms.dll
+lib/emby-server/system/Microsoft.AspNetCore.Components.Server.dll
+lib/emby-server/system/Microsoft.AspNetCore.Components.Web.dll
+lib/emby-server/system/Microsoft.AspNetCore.Components.dll
+lib/emby-server/system/Microsoft.AspNetCore.Connections.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.CookiePolicy.dll
+lib/emby-server/system/Microsoft.AspNetCore.Cors.dll
+lib/emby-server/system/Microsoft.AspNetCore.Cryptography.Internal.dll
+lib/emby-server/system/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll
+lib/emby-server/system/Microsoft.AspNetCore.DataProtection.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.DataProtection.Extensions.dll
+lib/emby-server/system/Microsoft.AspNetCore.DataProtection.dll
+lib/emby-server/system/Microsoft.AspNetCore.Diagnostics.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Diagnostics.HealthChecks.dll
+lib/emby-server/system/Microsoft.AspNetCore.Diagnostics.dll
+lib/emby-server/system/Microsoft.AspNetCore.HostFiltering.dll
+lib/emby-server/system/Microsoft.AspNetCore.Hosting.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Hosting.dll
+lib/emby-server/system/Microsoft.AspNetCore.Html.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Connections.Common.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Connections.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Extensions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Features.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.Results.dll
+lib/emby-server/system/Microsoft.AspNetCore.Http.dll
+lib/emby-server/system/Microsoft.AspNetCore.HttpLogging.dll
+lib/emby-server/system/Microsoft.AspNetCore.HttpOverrides.dll
+lib/emby-server/system/Microsoft.AspNetCore.HttpsPolicy.dll
+lib/emby-server/system/Microsoft.AspNetCore.Identity.dll
+lib/emby-server/system/Microsoft.AspNetCore.Localization.Routing.dll
+lib/emby-server/system/Microsoft.AspNetCore.Localization.dll
+lib/emby-server/system/Microsoft.AspNetCore.Metadata.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.ApiExplorer.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Core.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Cors.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.DataAnnotations.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Formatters.Json.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Formatters.Xml.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Localization.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.Razor.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.RazorPages.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.TagHelpers.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.ViewFeatures.dll
+lib/emby-server/system/Microsoft.AspNetCore.Mvc.dll
+lib/emby-server/system/Microsoft.AspNetCore.Razor.Runtime.dll
+lib/emby-server/system/Microsoft.AspNetCore.Razor.dll
+lib/emby-server/system/Microsoft.AspNetCore.ResponseCaching.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.ResponseCaching.dll
+lib/emby-server/system/Microsoft.AspNetCore.ResponseCompression.dll
+lib/emby-server/system/Microsoft.AspNetCore.Rewrite.dll
+lib/emby-server/system/Microsoft.AspNetCore.Routing.Abstractions.dll
+lib/emby-server/system/Microsoft.AspNetCore.Routing.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.HttpSys.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.IIS.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.IISIntegration.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.Kestrel.Core.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.Kestrel.Transport.Quic.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll
+lib/emby-server/system/Microsoft.AspNetCore.Server.Kestrel.dll
+lib/emby-server/system/Microsoft.AspNetCore.Session.dll
+lib/emby-server/system/Microsoft.AspNetCore.SignalR.Common.dll
+lib/emby-server/system/Microsoft.AspNetCore.SignalR.Core.dll
+lib/emby-server/system/Microsoft.AspNetCore.SignalR.Protocols.Json.dll
+lib/emby-server/system/Microsoft.AspNetCore.SignalR.dll
+lib/emby-server/system/Microsoft.AspNetCore.StaticFiles.dll
+lib/emby-server/system/Microsoft.AspNetCore.WebSockets.dll
+lib/emby-server/system/Microsoft.AspNetCore.WebUtilities.dll
+lib/emby-server/system/Microsoft.AspNetCore.dll
 lib/emby-server/system/Microsoft.Bcl.HashCode.dll
+lib/emby-server/system/Microsoft.CSharp.dll
+lib/emby-server/system/Microsoft.Extensions.Caching.Abstractions.dll
+lib/emby-server/system/Microsoft.Extensions.Caching.Memory.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.Abstractions.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.Binder.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.CommandLine.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.EnvironmentVariables.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.FileExtensions.dll
+lib/emby-server/system/Microsoft.Extensions.Configuration.Ini.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.Json.dll
+lib/emby-server/system/Microsoft.Extensions.Configuration.KeyPerFile.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.UserSecrets.dll
+lib/emby-server/system/Microsoft.Extensions.Configuration.Xml.dll
 lib/emby-server/system/Microsoft.Extensions.Configuration.dll
 lib/emby-server/system/Microsoft.Extensions.DependencyInjection.Abstractions.dll
 lib/emby-server/system/Microsoft.Extensions.DependencyInjection.dll
+lib/emby-server/system/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll
+lib/emby-server/system/Microsoft.Extensions.Diagnostics.HealthChecks.dll
+lib/emby-server/system/Microsoft.Extensions.Features.dll
 lib/emby-server/system/Microsoft.Extensions.FileProviders.Abstractions.dll
+lib/emby-server/system/Microsoft.Extensions.FileProviders.Composite.dll
+lib/emby-server/system/Microsoft.Extensions.FileProviders.Embedded.dll
 lib/emby-server/system/Microsoft.Extensions.FileProviders.Physical.dll
 lib/emby-server/system/Microsoft.Extensions.FileSystemGlobbing.dll
 lib/emby-server/system/Microsoft.Extensions.Hosting.Abstractions.dll
 lib/emby-server/system/Microsoft.Extensions.Hosting.dll
+lib/emby-server/system/Microsoft.Extensions.Http.dll
+lib/emby-server/system/Microsoft.Extensions.Identity.Core.dll
+lib/emby-server/system/Microsoft.Extensions.Identity.Stores.dll
+lib/emby-server/system/Microsoft.Extensions.Localization.Abstractions.dll
+lib/emby-server/system/Microsoft.Extensions.Localization.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.Abstractions.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.Configuration.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.Console.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.Debug.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.EventLog.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.EventSource.dll
+lib/emby-server/system/Microsoft.Extensions.Logging.TraceSource.dll
 lib/emby-server/system/Microsoft.Extensions.Logging.dll
+lib/emby-server/system/Microsoft.Extensions.ObjectPool.dll
 lib/emby-server/system/Microsoft.Extensions.Options.ConfigurationExtensions.dll
+lib/emby-server/system/Microsoft.Extensions.Options.DataAnnotations.dll
 lib/emby-server/system/Microsoft.Extensions.Options.dll
 lib/emby-server/system/Microsoft.Extensions.Primitives.dll
+lib/emby-server/system/Microsoft.Extensions.WebEncoders.dll
+lib/emby-server/system/Microsoft.JSInterop.dll
+lib/emby-server/system/Microsoft.Net.Http.Headers.dll
 lib/emby-server/system/Microsoft.OpenApi.dll
-lib/emby-server/system/Microsoft.OpenApi.pdb
+lib/emby-server/system/Microsoft.VisualBasic.Core.dll
+lib/emby-server/system/Microsoft.VisualBasic.dll
 lib/emby-server/system/Microsoft.Win32.Primitives.dll
+lib/emby-server/system/Microsoft.Win32.Registry.dll
+lib/emby-server/system/Microsoft.Win32.SystemEvents.dll
 lib/emby-server/system/PlaylistsNET.dll
 lib/emby-server/system/RSSDP.dll
-lib/emby-server/system/RSSDP.pdb
 lib/emby-server/system/SQLitePCL.pretty.dll
-lib/emby-server/system/SQLitePCL.pretty.pdb
 lib/emby-server/system/SQLitePCLRaw.provider.sqlite3.dll.config
 lib/emby-server/system/SQLitePCLRawEx.core.dll
-lib/emby-server/system/SQLitePCLRawEx.core.pdb
 lib/emby-server/system/ServiceStack.Text.dll
 lib/emby-server/system/SharpCompress.dll
+lib/emby-server/system/SharpDX.DXGI.dll
+lib/emby-server/system/SharpDX.Direct3D11.dll
+lib/emby-server/system/SharpDX.Direct3D9.dll
+lib/emby-server/system/SharpDX.MediaFoundation.dll
+lib/emby-server/system/SharpDX.dll
 lib/emby-server/system/SimpleInjector.dll
 lib/emby-server/system/SkiaSharp.dll
-lib/emby-server/system/SocketHttpListener.dll
-lib/emby-server/system/SocketHttpListener.pdb
 lib/emby-server/system/System.AppContext.dll
 lib/emby-server/system/System.Buffers.dll
 lib/emby-server/system/System.Collections.Concurrent.dll
+lib/emby-server/system/System.Collections.Immutable.dll
 lib/emby-server/system/System.Collections.NonGeneric.dll
 lib/emby-server/system/System.Collections.Specialized.dll
 lib/emby-server/system/System.Collections.dll
 lib/emby-server/system/System.ComponentModel.Annotations.dll
+lib/emby-server/system/System.ComponentModel.DataAnnotations.dll
 lib/emby-server/system/System.ComponentModel.EventBasedAsync.dll
 lib/emby-server/system/System.ComponentModel.Primitives.dll
 lib/emby-server/system/System.ComponentModel.TypeConverter.dll
 lib/emby-server/system/System.ComponentModel.dll
+lib/emby-server/system/System.Configuration.dll
 lib/emby-server/system/System.Console.dll
+lib/emby-server/system/System.Core.dll
 lib/emby-server/system/System.Data.Common.dll
+lib/emby-server/system/System.Data.DataSetExtensions.dll
+lib/emby-server/system/System.Data.dll
 lib/emby-server/system/System.Diagnostics.Contracts.dll
 lib/emby-server/system/System.Diagnostics.Debug.dll
 lib/emby-server/system/System.Diagnostics.DiagnosticSource.dll
+lib/emby-server/system/System.Diagnostics.EventLog.dll
 lib/emby-server/system/System.Diagnostics.FileVersionInfo.dll
 lib/emby-server/system/System.Diagnostics.Process.dll
 lib/emby-server/system/System.Diagnostics.StackTrace.dll
@@ -128,12 +214,17 @@ lib/emby-server/system/System.Diagnostics.Tools.dll
 lib/emby-server/system/System.Diagnostics.TraceSource.dll
 lib/emby-server/system/System.Diagnostics.Tracing.dll
 lib/emby-server/system/System.Drawing.Primitives.dll
+lib/emby-server/system/System.Drawing.dll
 lib/emby-server/system/System.Dynamic.Runtime.dll
+lib/emby-server/system/System.Formats.Asn1.dll
 lib/emby-server/system/System.Globalization.Calendars.dll
 lib/emby-server/system/System.Globalization.Extensions.dll
 lib/emby-server/system/System.Globalization.dll
+lib/emby-server/system/System.IO.Compression.Brotli.dll
+lib/emby-server/system/System.IO.Compression.FileSystem.dll
 lib/emby-server/system/System.IO.Compression.ZipFile.dll
 lib/emby-server/system/System.IO.Compression.dll
+lib/emby-server/system/System.IO.FileSystem.AccessControl.dll
 lib/emby-server/system/System.IO.FileSystem.DriveInfo.dll
 lib/emby-server/system/System.IO.FileSystem.Primitives.dll
 lib/emby-server/system/System.IO.FileSystem.Watcher.dll
@@ -141,6 +232,7 @@ lib/emby-server/system/System.IO.FileSystem.dll
 lib/emby-server/system/System.IO.IsolatedStorage.dll
 lib/emby-server/system/System.IO.MemoryMappedFiles.dll
 lib/emby-server/system/System.IO.Pipelines.dll
+lib/emby-server/system/System.IO.Pipes.AccessControl.dll
 lib/emby-server/system/System.IO.Pipes.dll
 lib/emby-server/system/System.IO.UnmanagedMemoryStream.dll
 lib/emby-server/system/System.IO.dll
@@ -149,21 +241,42 @@ lib/emby-server/system/System.Linq.Parallel.dll
 lib/emby-server/system/System.Linq.Queryable.dll
 lib/emby-server/system/System.Linq.dll
 lib/emby-server/system/System.Memory.dll
+lib/emby-server/system/System.Net.Http.Json.dll
 lib/emby-server/system/System.Net.Http.dll
+lib/emby-server/system/System.Net.HttpListener.dll
+lib/emby-server/system/System.Net.Mail.dll
 lib/emby-server/system/System.Net.NameResolution.dll
 lib/emby-server/system/System.Net.NetworkInformation.dll
 lib/emby-server/system/System.Net.Ping.dll
 lib/emby-server/system/System.Net.Primitives.dll
+lib/emby-server/system/System.Net.Quic.dll
 lib/emby-server/system/System.Net.Requests.dll
 lib/emby-server/system/System.Net.Security.dll
+lib/emby-server/system/System.Net.ServicePoint.dll
 lib/emby-server/system/System.Net.Sockets.dll
+lib/emby-server/system/System.Net.WebClient.dll
 lib/emby-server/system/System.Net.WebHeaderCollection.dll
+lib/emby-server/system/System.Net.WebProxy.dll
 lib/emby-server/system/System.Net.WebSockets.Client.dll
+lib/emby-server/system/System.Net.WebSockets.WebSocketProtocol.dll
 lib/emby-server/system/System.Net.WebSockets.dll
+lib/emby-server/system/System.Net.dll
 lib/emby-server/system/System.Numerics.Vectors.dll
+lib/emby-server/system/System.Numerics.dll
 lib/emby-server/system/System.ObjectModel.dll
+lib/emby-server/system/System.Private.CoreLib.dll
+lib/emby-server/system/System.Private.DataContractSerialization.dll
+lib/emby-server/system/System.Private.Uri.dll
+lib/emby-server/system/System.Private.Xml.Linq.dll
+lib/emby-server/system/System.Private.Xml.dll
+lib/emby-server/system/System.Reflection.DispatchProxy.dll
+lib/emby-server/system/System.Reflection.Emit.ILGeneration.dll
+lib/emby-server/system/System.Reflection.Emit.Lightweight.dll
+lib/emby-server/system/System.Reflection.Emit.dll
 lib/emby-server/system/System.Reflection.Extensions.dll
+lib/emby-server/system/System.Reflection.Metadata.dll
 lib/emby-server/system/System.Reflection.Primitives.dll
+lib/emby-server/system/System.Reflection.TypeExtensions.dll
 lib/emby-server/system/System.Reflection.dll
 lib/emby-server/system/System.Resources.Reader.dll
 lib/emby-server/system/System.Resources.ResourceManager.dll
@@ -174,26 +287,40 @@ lib/emby-server/system/System.Runtime.Extensions.dll
 lib/emby-server/system/System.Runtime.Handles.dll
 lib/emby-server/system/System.Runtime.InteropServices.RuntimeInformation.dll
 lib/emby-server/system/System.Runtime.InteropServices.dll
+lib/emby-server/system/System.Runtime.Intrinsics.dll
+lib/emby-server/system/System.Runtime.Loader.dll
 lib/emby-server/system/System.Runtime.Numerics.dll
 lib/emby-server/system/System.Runtime.Serialization.Formatters.dll
 lib/emby-server/system/System.Runtime.Serialization.Json.dll
 lib/emby-server/system/System.Runtime.Serialization.Primitives.dll
 lib/emby-server/system/System.Runtime.Serialization.Xml.dll
+lib/emby-server/system/System.Runtime.Serialization.dll
 lib/emby-server/system/System.Runtime.dll
+lib/emby-server/system/System.Security.AccessControl.dll
 lib/emby-server/system/System.Security.Claims.dll
 lib/emby-server/system/System.Security.Cryptography.Algorithms.dll
+lib/emby-server/system/System.Security.Cryptography.Cng.dll
 lib/emby-server/system/System.Security.Cryptography.Csp.dll
 lib/emby-server/system/System.Security.Cryptography.Encoding.dll
+lib/emby-server/system/System.Security.Cryptography.OpenSsl.dll
+lib/emby-server/system/System.Security.Cryptography.Pkcs.dll
 lib/emby-server/system/System.Security.Cryptography.Primitives.dll
 lib/emby-server/system/System.Security.Cryptography.X509Certificates.dll
+lib/emby-server/system/System.Security.Cryptography.Xml.dll
+lib/emby-server/system/System.Security.Principal.Windows.dll
 lib/emby-server/system/System.Security.Principal.dll
 lib/emby-server/system/System.Security.SecureString.dll
+lib/emby-server/system/System.Security.dll
+lib/emby-server/system/System.ServiceModel.Web.dll
+lib/emby-server/system/System.ServiceProcess.ServiceController.dll
+lib/emby-server/system/System.ServiceProcess.dll
 lib/emby-server/system/System.Text.Encoding.CodePages.dll
 lib/emby-server/system/System.Text.Encoding.Extensions.dll
 lib/emby-server/system/System.Text.Encoding.dll
 lib/emby-server/system/System.Text.Encodings.Web.dll
 lib/emby-server/system/System.Text.Json.dll
 lib/emby-server/system/System.Text.RegularExpressions.dll
+lib/emby-server/system/System.Threading.Channels.dll
 lib/emby-server/system/System.Threading.Overlapped.dll
 lib/emby-server/system/System.Threading.Tasks.Dataflow.dll
 lib/emby-server/system/System.Threading.Tasks.Extensions.dll
@@ -203,14 +330,23 @@ lib/emby-server/system/System.Threading.Thread.dll
 lib/emby-server/system/System.Threading.ThreadPool.dll
 lib/emby-server/system/System.Threading.Timer.dll
 lib/emby-server/system/System.Threading.dll
+lib/emby-server/system/System.Transactions.Local.dll
+lib/emby-server/system/System.Transactions.dll
 lib/emby-server/system/System.ValueTuple.dll
+lib/emby-server/system/System.Web.HttpUtility.dll
+lib/emby-server/system/System.Web.dll
+lib/emby-server/system/System.Windows.dll
+lib/emby-server/system/System.Xml.Linq.dll
 lib/emby-server/system/System.Xml.ReaderWriter.dll
+lib/emby-server/system/System.Xml.Serialization.dll
 lib/emby-server/system/System.Xml.XDocument.dll
 lib/emby-server/system/System.Xml.XPath.XDocument.dll
 lib/emby-server/system/System.Xml.XPath.dll
 lib/emby-server/system/System.Xml.XmlDocument.dll
 lib/emby-server/system/System.Xml.XmlSerializer.dll
-lib/emby-server/system/arm64/libSkiaSharp.dll
+lib/emby-server/system/System.Xml.dll
+lib/emby-server/system/System.dll
+lib/emby-server/system/WindowsBase.dll
 lib/emby-server/system/dashboard-ui/apikeys/apikeys.js
 lib/emby-server/system/dashboard-ui/app.js
 lib/emby-server/system/dashboard-ui/apploader.js
@@ -970,7 +1106,20 @@ lib/emby-server/system/dashboard-ui/wizard/wizardstart.html
 lib/emby-server/system/dashboard-ui/wizard/wizardstart.js
 lib/emby-server/system/dashboard-ui/wizard/wizarduser.html
 lib/emby-server/system/dashboard-ui/wizard/wizarduserpage.js
-lib/emby-server/system/libSkiaSharp.dylib
+lib/emby-server/system/libSystem.Globalization.Native.so
+lib/emby-server/system/libSystem.IO.Compression.Native.so
+lib/emby-server/system/libSystem.Native.so
+lib/emby-server/system/libSystem.Net.Security.Native.so
+lib/emby-server/system/libSystem.Security.Cryptography.Native.OpenSsl.so
+lib/emby-server/system/libclrjit.so
+lib/emby-server/system/libcoreclr.so
+lib/emby-server/system/libcoreclrtraceptprovider.so
+lib/emby-server/system/libdbgshim.so
+lib/emby-server/system/libhostfxr.so
+lib/emby-server/system/libhostpolicy.so
+lib/emby-server/system/libmscordaccore.so
+lib/emby-server/system/libmscordbi.so
+lib/emby-server/system/mscorlib.dll
 lib/emby-server/system/netstandard.dll
 lib/emby-server/system/plugins/AudioDb.dll
 lib/emby-server/system/plugins/BlurayMounter.dll
@@ -990,5 +1139,40 @@ lib/emby-server/system/plugins/OMDb.dll
 lib/emby-server/system/plugins/OpenSubtitles.dll
 lib/emby-server/system/plugins/StudioImages.dll
 lib/emby-server/system/plugins/Tvdb.dll
-lib/emby-server/system/x64/libSkiaSharp.dll
-lib/emby-server/system/x86/libSkiaSharp.dll
+lib/emby-server/system/traystrings/ar.json
+lib/emby-server/system/traystrings/bg-BG.json
+lib/emby-server/system/traystrings/cs.json
+lib/emby-server/system/traystrings/da.json
+lib/emby-server/system/traystrings/de.json
+lib/emby-server/system/traystrings/el.json
+lib/emby-server/system/traystrings/en-GB.json
+lib/emby-server/system/traystrings/en-US.json
+lib/emby-server/system/traystrings/es-MX.json
+lib/emby-server/system/traystrings/es.json
+lib/emby-server/system/traystrings/et-EE.json
+lib/emby-server/system/traystrings/fi.json
+lib/emby-server/system/traystrings/fr-CA.json
+lib/emby-server/system/traystrings/fr.json
+lib/emby-server/system/traystrings/gsw.json
+lib/emby-server/system/traystrings/he.json
+lib/emby-server/system/traystrings/hi-IN.json
+lib/emby-server/system/traystrings/hr.json
+lib/emby-server/system/traystrings/hu.json
+lib/emby-server/system/traystrings/it.json
+lib/emby-server/system/traystrings/ja.json
+lib/emby-server/system/traystrings/kk.json
+lib/emby-server/system/traystrings/ko.json
+lib/emby-server/system/traystrings/lt-LT.json
+lib/emby-server/system/traystrings/nb.json
+lib/emby-server/system/traystrings/nl.json
+lib/emby-server/system/traystrings/pl.json
+lib/emby-server/system/traystrings/pt-BR.json
+lib/emby-server/system/traystrings/pt-PT.json
+lib/emby-server/system/traystrings/ru.json
+lib/emby-server/system/traystrings/sk.json
+lib/emby-server/system/traystrings/sv.json
+lib/emby-server/system/traystrings/tr.json
+lib/emby-server/system/traystrings/uk.json
+lib/emby-server/system/traystrings/zh-CN.json
+lib/emby-server/system/traystrings/zh-HK.json
+lib/emby-server/system/traystrings/zh-TW.json