SynoCommunity / spksrc

Cross compilation framework to create native packages for the Synology's NAS
https://synocommunity.com
Other
3.03k stars 1.23k forks source link

Sonarr functionality is broken when using latest versions of Sonarr and Mono on rtd1296 architecture #4584

Closed bagheera18 closed 3 years ago

bagheera18 commented 3 years ago

Setup

_Package Name: Mono & Sonarr _Package Version: Mono: 5.20.1.34-16. Sonarr: v20210329-19

_NAS Model: Synology DS418 _NAS Architecture: rtd1296 _DSM version: DSM 6.2.4-25556

Expected behavior

Sonarr should update series with new episodes, metadata, etc. Essentially it's base functionality

Actual behavior

It produces a failure when trying to do any call to any external service (even getting the time)

Steps to reproduce

_1. Install Mono and Sonarr _2. Add a tv show and/or update it. This results in a failure. _3. Look in the event logs

Error message:

Error: SecureChannelFailure (Authentication failed, see inner exception.): ‘https://skyhook.sonarr.tv/v1/tvdb/search/en/?term=breaking bad’:

Exception : System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.): ‘https://skyhook.sonarr.tv/v1/tvdb/search/en/?term=breaking bad’ —> System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.) —> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. —> Mono.Btls.MonoBtlsException: Ssl error:0f000078:elliptic curve routines:OPENSSL_internal:POINT_IS_NOT_ON_CURVE at /spksrc/spk/mono/work-aarch64-6.1/mono-5.20.1.34/external/boringssl/crypto/ec/ec.c:835 at Mono.Btls.MonoBtlsContext.ProcessHandshake () [0x00038] in :0 at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate) [0x000a1] in :0 at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool) at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in :0 at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken) [0x000ff] in :0 at Mono.Net.Security.AsyncProtocolRequest.StartOperation (System.Threading.CancellationToken cancellationToken) [0x0008b] in :0 — End of inner exception stack trace — at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Boolean runSynchronously, Mono.Net.Security.MonoSslAuthenticationOptions options, System.Threading.CancellationToken cancellationToken) [0x00252] in :0 at Mono.Net.Security.MonoTlsStream.CreateStream (System.Net.WebConnectionTunnel tunnel, System.Threading.CancellationToken cancellationToken) [0x00126] in :0 at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x001ba] in :0 — End of inner exception stack trace — at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x0021a] in :0 at System.Net.WebConnection.InitConnection (System.Net.WebOperation operation, System.Threading.CancellationToken cancellationToken) [0x00141] in :0 at System.Net.WebOperation.Run () [0x0009a] in :0 at System.Net.WebCompletionSource1[T].WaitForCompletion () [0x00094] in :0 at System.Net.HttpWebRequest.RunWithTimeoutWorker[T] (System.Threading.Tasks.Task1[TResult] workerTask, System.Int32 timeout, System.Action abort, System.Func`1[TResult] aborted, System.Threading.CancellationTokenSource cts) [0x000f8] in :0 at System.Net.HttpWebRequest.GetResponse () [0x00016] in :0 at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.GetResponse (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookies) [0x00123] in <838290d41cb7431fbc4fa8070d0b0648>:0 — End of inner exception stack trace — at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.GetResponse (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookies) [0x001e7] in <838290d41cb7431fbc4fa8070d0b0648>:0 at NzbDrone.Common.Http.HttpClient.ExecuteRequest (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookieContainer) [0x00086] in <838290d41cb7431fbc4fa8070d0b0648>:0 at NzbDrone.Common.Http.HttpClient.Execute (NzbDrone.Common.Http.HttpRequest request) [0x00008] in <838290d41cb7431fbc4fa8070d0b0648>:0 at NzbDrone.Common.Http.HttpClient.Get (NzbDrone.Common.Http.HttpRequest request) [0x00007] in <838290d41cb7431fbc4fa8070d0b0648>:0 at NzbDrone.Common.Http.HttpClient.Get[T] (NzbDrone.Common.Http.HttpRequest request) [0x00000] in <838290d41cb7431fbc4fa8070d0b0648>:0 at NzbDrone.Core.MetadataSource.SkyHook.SkyHookProxy.SearchForNewSeries (System.String title) [0x000ff] in :0

VincentMasselis commented 3 years ago

I'm facing the exact same issue.

The Radarr package also faced the same bug during months making every owner of synology with an rtd1296 to rollback their version of Radarr until this was merged. That was the only solution as far as I know.

publicarray commented 3 years ago

Please see #4572

This is a known issue with the CPU architecture, and it is related to SSL/TLS and mono.

Please install mono version 5.8.0.108-11https://github.com/SynoCommunity/spksrc/wiki/Radarr-Sonarr-Lidarr-Jackett#rtd1296-armv8

hgy59 commented 3 years ago

@publicarray To avoid further discussions I have now deleted the mono packages for aarch64 except version 5.8.0.108-11. The packages where already deactivated, but it was possible to manually download and install. Now such nonworking packages do not exist anymore.

bagheera18 commented 3 years ago

Not exactly what I was hoping for, but for now Sonarr works, but with the error "Currently installed Mono version 5.8.0.108 is no longer supported. Please upgrade Mono to version 5.20.". And I can't update to the new version of Sonarr now because that completely breaks Sonarr. Any news of the ETA of Sonarr 4.0?

publicarray commented 3 years ago

I have no idea but they do want to work on it: https://github.com/Sonarr/Sonarr/issues/3456

Komagain commented 2 years ago

Hello Each time I try to install manually mono 5.8 on DS418 (DSM7), the following error occurs "Format de fichier non valide. Veuillez contacter le développeur du paquet." "Invalid File Format". Is the package compatible with DSM 7, is there something special to do? @hgy59 the 5.20.1.34-18 is available for install, I thought it was removed for rtd1296 architecture.

hgy59 commented 2 years ago

@Komagain the mono 5.8 package is not available for DSM 7. Mono 5.20 is not available for aarch64 (ARMv8) with DSM 6 but available for DSM 7. I thought that DSM 7 has a newer compiler that does not break the mono package for aarch64.

Komagain commented 2 years ago

@Komagain the mono 5.8 package is not available for DSM 7. Mono 5.20 is not available for aarch64 (ARMv8) with DSM 6 but available for DSM 7. I thought that DSM 7 has a newer compiler that does not break the mono package for aarch64.

@hgy59 Now it works, I had to sudo /volume1/@appstore/mono/bin/cert-sync /etc/ssl/certs/ca-certificates.crt

hgy59 commented 2 years ago

@Komagain thanks for the feedback. I suppose this is about to be fixed in #5070.

Stanzilla commented 2 years ago

Doesn't seem to be enough to fix the issue here, DSM 7.1 though.