Thefrank / jellyfin-server-freebsd

jellyfin-server component for freebsd
185 stars 16 forks source link

Unable to install plugins #32

Closed SyntaxisCS closed 1 year ago

SyntaxisCS commented 1 year ago

Hey so I'm trying to install the bookshelf plugin but every time I try to in the jellyfin plugin settings I receive the error "There was an error when installing this plugin" and I looked in the logs and this is what it said "Error processing request. URL "POST" "/Packages/Installed/Bookshelf".". I tried to install the plugin manually but I have no idea where the plugin folder is and I searched everywhere and even still if I did find it I have no idea how to ftp into a jail on truenas. What should I do?

Thefrank commented 1 year ago

Jellyfin uses three different locations that can be configured:

jellyfinserver_exec_dir     Path to the actual jellyfin binary Defaults to /usr/local/jellyfinserver
jellyfinserver_data_dir     Path to use for the data folder (database files, etc.) Defaults to /var/db/jellyfinserver
jellyfinserver_cache_dir    Path to use for caching. Defaults to /var/cache/jellyfinserver

The linux guide lists /var/lib/jellyfin/plugins/ as its default for plugins. So Jellyfin should pickup plugins from /var/db/jellyfinserver/plugins for my FreeBSD pkgs. From the TrueNAS GUI it might be easier to go Jails -> JAILWHEREJELLYFIN->Shell and work from there.

Can you provide a larger snippet of the log?

SyntaxisCS commented 1 year ago

Hello, I put the dll file for the plugin manually in the /var/db/jellyfinserver/plugins folder like you said and restarted the jail and it didn't install the plugin. The issue installing the plugin through the plugins menu still remains and this is the error

[2022-11-12 13:57:08.884 -08:00] [WRN] [43] Jellyfin.Server.Middleware.ResponseTimeMiddleware: Slow HTTP Response from "http://10.63.120.77:8096/Packages/Installed/Bookshelf?AssemblyGuid=9c4e63f1031b4f25988b4f7d78a8b53e&version=9.0.0.0" to "10.63.121.224" in 0:00:00.5800632 with Status Code 404
[2022-11-12 13:59:08.452 -08:00] [ERR] [24] Emby.Server.Implementations.Updates.InstallationManager: An error occurred while accessing the plugin manifest: "https://repo.jellyfin.org/releases/plugin/manifest-stable.json"
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.IO.IOException:  Received an unexpected EOF or 0 bytes from the transport stream.
   at System.Net.Security.SslStream.<FillHandshakeBufferAsync>g__InternalFillHandshakeBufferAsync|189_0[TIOAdapter](TIOAdapter adap, ValueTask`1 task, Int32 minSize)
   at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
   at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at Microsoft.Extensions.Http.Logging.LoggingScopeHttpMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
   at System.Net.Http.Json.HttpClientJsonExtensions.GetFromJsonAsyncCore[T](Task`1 taskResponse, JsonSerializerOptions options, CancellationToken cancellationToken)
   at Emby.Server.Implementations.Updates.InstallationManager.GetPackages(String manifestName, String manifest, Boolean filterIncompatible, CancellationToken cancellationToken)
Thefrank commented 1 year ago

From the inner exception it looks more like an SSL error. Are you running the newest openssl? Newest certs? Can you ping or curl out of the jail and get a valid response?

SyntaxisCS commented 1 year ago

I am able to ping out of the jail and get responses yes. I ping google.com and I get packets back. I'm starting to believe that the plugin manager not working is more of an issue with the actual jellyfin repo as I entered in the repo https://raw.githubusercontent.com/danieladov/JellyfinPluginManifest/master/manifest.json and it consistently pops up no problem AND I was able to install skin manager.

SyntaxisCS commented 1 year ago

Ok I manager to install bookshelf manually and I was able to get the plugins to list reliably by changing the repo from https://repo.jellyfin.org/releases/plugin/manifest-stable.json to https://tor1.mirror.jellyfin.org/releases/plugin/manifest-stable.json plugins still do not automatically install off the official repo but I am lead to believe that is more of a problem with them than us because I was able to fetch the bookshelf plugin from github directly but not the repo itself.

Thefrank commented 1 year ago

It certainly sounds like an issue that is more on their side. I will leave this open for a another week or so just to see if others are having similar issues with plugins. There are no recent issues on the official repo so I am leaning more towards intermittent issue on their end but more feedback never hurts.

Thefrank commented 1 year ago

Closing. Looks like no one else is experiencing this.

Future readers: Still happening? Please open another issue.