diff options
Diffstat (limited to 'pkgs/by-name/so')
-rw-r--r-- | pkgs/by-name/so/soju/package.nix | 46 | ||||
-rw-r--r-- | pkgs/by-name/so/solana-cli/package.nix | 2 | ||||
-rw-r--r-- | pkgs/by-name/so/sonarlint-ls/package.nix | 6 | ||||
-rw-r--r-- | pkgs/by-name/so/sonarr/deps.nix | 358 | ||||
-rw-r--r-- | pkgs/by-name/so/sonarr/nuget-config.patch | 9 | ||||
-rw-r--r-- | pkgs/by-name/so/sonarr/package.nix | 161 | ||||
-rw-r--r-- | pkgs/by-name/so/sonarr/update.py | 160 | ||||
-rw-r--r-- | pkgs/by-name/so/sophus/package.nix | 4 | ||||
-rw-r--r-- | pkgs/by-name/so/sozi/package.nix | 35 |
9 files changed, 757 insertions, 24 deletions
diff --git a/pkgs/by-name/so/soju/package.nix b/pkgs/by-name/so/soju/package.nix index f3519f4782834..7dcf633ecdf88 100644 --- a/pkgs/by-name/so/soju/package.nix +++ b/pkgs/by-name/so/soju/package.nix @@ -1,42 +1,49 @@ -{ lib -, buildGoModule -, fetchFromSourcehut -, installShellFiles -, scdoc +{ + lib, + buildGoModule, + fetchFromGitea, + installShellFiles, + scdoc, + nixosTests, }: buildGoModule rec { pname = "soju"; - version = "0.8.0"; + version = "0.8.1"; - src = fetchFromSourcehut { - owner = "~emersion"; + src = fetchFromGitea { + domain = "codeberg.org"; + owner = "emersion"; repo = "soju"; rev = "v${version}"; - hash = "sha256-K7Dgc1HQ6+GnjraQNcK9LOFxUIoKKWro1mWKDZFwLiE="; + hash = "sha256-Zhqmek7dvuyMb35XkAHXUaSiQZaGgGWtM09Dj84DDIM="; }; - vendorHash = "sha256-4Yl87Gk/HykjIyNpRfgthLf6b+v7kxmONIhYBWVXi0I="; + vendorHash = "sha256-t3jupiEuxWDFMfBiQ07il7lnmqG6zrV68lRNH1Gts4k="; nativeBuildInputs = [ installShellFiles scdoc ]; - ldflags = [ "-s" "-w" ]; + ldflags = [ + "-s" + "-w" + "-X codeberg.org/emersion/soju/config.DefaultPath=/etc/soju/config" + "-X codeberg.org/emersion/soju/config.DefaultUnixAdminPath=/run/soju/admin" + ]; postBuild = '' make doc/soju.1 doc/sojuctl.1 ''; + checkFlags = [ "-skip TestPostgresMigrations" ]; + postInstall = '' installManPage doc/soju.1 doc/sojuctl.1 ''; - preCheck = '' - # Disable a test that requires an additional service. - rm database/postgres_test.go - ''; + passthru.tests.soju = nixosTests.soju; meta = with lib; { description = "User-friendly IRC bouncer"; @@ -48,8 +55,13 @@ buildGoModule rec { deployments. ''; homepage = "https://soju.im"; - changelog = "https://git.sr.ht/~emersion/soju/refs/${src.rev}"; + changelog = "https://codeberg.org/emersion/soju/releases/tag/${src.rev}"; license = licenses.agpl3Only; - maintainers = with maintainers; [ azahi malte-v jtbx ]; + maintainers = with maintainers; [ + azahi + malte-v + jtbx + ]; + mainProgram = "sojuctl"; }; } diff --git a/pkgs/by-name/so/solana-cli/package.nix b/pkgs/by-name/so/solana-cli/package.nix index b4a56dda78c96..aa7bcd58936d7 100644 --- a/pkgs/by-name/so/solana-cli/package.nix +++ b/pkgs/by-name/so/solana-cli/package.nix @@ -80,7 +80,7 @@ rustPlatform.buildRustPackage rec { Libsystem ]; - postInstall = '' + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' installShellCompletion --cmd solana \ --bash <($out/bin/solana completion --shell bash) \ --fish <($out/bin/solana completion --shell fish) \ diff --git a/pkgs/by-name/so/sonarlint-ls/package.nix b/pkgs/by-name/so/sonarlint-ls/package.nix index 42b8d6098947e..ee3f66b5d9dc5 100644 --- a/pkgs/by-name/so/sonarlint-ls/package.nix +++ b/pkgs/by-name/so/sonarlint-ls/package.nix @@ -14,10 +14,7 @@ , gnused }: -let - mavenJdk17 = maven.override { jdk = jdk17; }; -in -mavenJdk17.buildMavenPackage rec { +maven.buildMavenPackage rec { pname = "sonarlint-ls"; version = "3.5.1.75119"; @@ -28,6 +25,7 @@ mavenJdk17.buildMavenPackage rec { hash = "sha256-6tbuX0wUpqbTyM44e7PqZHL0/XjN8hTFCgfzV+qc1m0="; }; + mvnJdk = jdk17; manualMvnArtifacts = [ "org.apache.maven.surefire:surefire-junit-platform:3.1.2" "org.junit.platform:junit-platform-launcher:1.8.2" diff --git a/pkgs/by-name/so/sonarr/deps.nix b/pkgs/by-name/so/sonarr/deps.nix new file mode 100644 index 0000000000000..dbf3a2421aa4b --- /dev/null +++ b/pkgs/by-name/so/sonarr/deps.nix @@ -0,0 +1,358 @@ +# This file was automatically generated by passthru.fetch-deps. +# Please dont edit it manually, your changes might get overwritten! + +{ fetchNuGet }: [ + (fetchNuGet { pname = "Castle.Core"; version = "5.1.1"; hash = "sha256-oVkQB+ON7S6Q27OhXrTLaxTL0kWB58HZaFFuiw4iTrE="; }) + (fetchNuGet { pname = "coverlet.collector"; version = "3.0.4-preview.27.ge7cb7c3b40"; hash = "sha256-UiiFa/GfLf3gcKb1atAz5gwR0sIA7sA1GFKSbk6sIgM="; url = "https://pkgs.dev.azure.com/Servarr/7f7f0cec-b6d1-4285-a8c2-5c0b3ce99d29/_packaging/88cb5621-d569-46bd-ab53-84dba1855910/nuget/v3/flat2/coverlet.collector/3.0.4-preview.27.ge7cb7c3b40/coverlet.collector.3.0.4-preview.27.ge7cb7c3b40.nupkg"; }) + (fetchNuGet { pname = "coverlet.core"; version = "3.0.4-preview.27.ge7cb7c3b40"; hash = "sha256-nIVBoe0qz5e5eDmrhlMslznVzXne6eXbd8T4m2c+Qb8="; url = "https://pkgs.dev.azure.com/Servarr/7f7f0cec-b6d1-4285-a8c2-5c0b3ce99d29/_packaging/88cb5621-d569-46bd-ab53-84dba1855910/nuget/v3/flat2/coverlet.core/3.0.4-preview.27.ge7cb7c3b40/coverlet.core.3.0.4-preview.27.ge7cb7c3b40.nupkg"; }) + (fetchNuGet { pname = "Dapper"; version = "2.0.123"; hash = "sha256-Ic3pMHtq5jF94tPi8l5MFDGyLnEZYofcqxbH5yDLHZY="; }) + (fetchNuGet { pname = "Diacritical.Net"; version = "1.0.4"; hash = "sha256-rBYl6Dz7vRHPx/tXAJ8rupAVHUBilZ/WnJE92UrHge8="; }) + (fetchNuGet { pname = "DryIoc.dll"; version = "5.4.3"; hash = "sha256-qk3sUiiQu4TxdkG4Ise8Sn5h3kV5p6w6t9wMw5dSc94="; }) + (fetchNuGet { pname = "DryIoc.Microsoft.DependencyInjection"; version = "6.2.0"; hash = "sha256-C06B0tj3qFkVVGL0kSflf88As4t9TRaw/++N05Zaz0c="; }) + (fetchNuGet { pname = "Dynamitey"; version = "2.0.9.136"; hash = "sha256-wRvKTW4WisziZmglLOqbUXVv9pPh9MmF7HS/hcoj7fM="; }) + (fetchNuGet { pname = "Equ"; version = "2.3.0"; hash = "sha256-LMGRC1Pq6RdiPnyBEjDP1yA7gesHxrXPXa353pGGlqw="; }) + (fetchNuGet { pname = "FluentAssertions"; version = "6.10.0"; hash = "sha256-+IRWEaSkEmL9Eab0P2hpHQgf/TKS04t80x+mcq1O/Ck="; }) + (fetchNuGet { pname = "FluentValidation"; version = "9.5.4"; hash = "sha256-htL8KbjBt2rn+y+nUIc4lVBypWksQ+hsROxMBDzi5IU="; }) + (fetchNuGet { pname = "GitHubActionsTestLogger"; version = "2.3.3"; hash = "sha256-/TxZ7f3AvArXXe6isyom6ZHLFZR2hi1ejaQuY/6KN4s="; }) + (fetchNuGet { pname = "Ical.Net"; version = "4.2.0"; hash = "sha256-OcUvqj2nIyZ93MUYvRN+752xPkbtE/Uoi6T+W51eDKc="; }) + (fetchNuGet { pname = "ImpromptuInterface"; version = "7.0.1"; hash = "sha256-61KY5H3W/sGX12y0oREPX7W22VJokL9U3VJpOHW50s8="; }) + (fetchNuGet { pname = "Instances"; version = "1.6.1"; hash = "sha256-ge49RXumBAUKHld/5EhxydEVTKc8Lqz7MNgH4Y4ca9E="; }) + (fetchNuGet { pname = "Lib.Harmony"; version = "2.0.1"; hash = "sha256-mmzIoIUDbByhbGIA87aVHlyMpFBZnpJPZiD1Gja2MVU="; }) + (fetchNuGet { pname = "MailKit"; version = "3.6.0"; hash = "sha256-ECpS2Bt7e3h/uJ5Twng2/lw3j20C3UZgiivcW+KW7sQ="; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Cryptography.Internal"; version = "6.0.21"; hash = "sha256-YMveWdyikWEfczNSMSh0LlBS87gsMxMto1RW8Unjnro="; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Cryptography.KeyDerivation"; version = "6.0.21"; hash = "sha256-oc4Vfo6XUJRp3qDVrcknXNmQWgrCsqWMHZdMVZuYaD8="; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Owin"; version = "6.0.21"; hash = "sha256-F+plTVM6HblPFWetEX3M+AxQ8oNqqc3sRqrB1FmKcpU="; }) + (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "6.0.0"; hash = "sha256-49+H/iFwp+AfCICvWcqo9us4CzxApPKC37Q5Eqrw+JU="; }) + (fetchNuGet { pname = "Microsoft.Bcl.TimeProvider"; version = "8.0.0"; hash = "sha256-fBvDSXDSIYMzTa8+A+98KqhEXYP6E17wLo+UNwlyf4U="; }) + (fetchNuGet { pname = "Microsoft.Build.Tasks.Git"; version = "1.1.1"; hash = "sha256-PHxHmsCty8Si5dCUQSizeHkJrHa9+j2nRsg6Sz+5Za0="; }) + (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.5.0"; hash = "sha256-RBFO0YLp1//Li2a9s1oAhR+C4TMXgD7TTH+V9QDgMS8="; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; hash = "sha256-0huoqR2CJ3Z9Q2peaKD09TV3E6saYSqDGZ290K8CrH8="; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.4.1"; hash = "sha256-7/gsQHWAuFWrcVpVharASTNL+Mvl6Gw+AAw41k0MzXw="; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; hash = "sha256-dAhj/CgXG5VIy2dop1xplUsLje7uBPFjxasz9rdFIgY="; }) + (fetchNuGet { pname = "Microsoft.Data.SqlClient"; version = "2.1.2"; hash = "sha256-f70eHp8t/kB56AOumNb2MkkEuHsMzCLKw1WG1/DeONE="; }) + (fetchNuGet { pname = "Microsoft.Data.SqlClient.SNI.runtime"; version = "2.1.1"; hash = "sha256-+YMlbu7dcEvM92iYsLeiJKIxGP3oK0eWsJ6WCpfUBDA="; }) + (fetchNuGet { pname = "Microsoft.DotNet.InternalAbstractions"; version = "1.0.0"; hash = "sha256-HX3iOXH75I1L7eNihCbMNDDpcotfZpfQUdqdRTGM6FY="; }) + (fetchNuGet { pname = "Microsoft.DotNet.PlatformAbstractions"; version = "2.1.0"; hash = "sha256-vrZhYp94SjycUMGaVYCFWJ4p7KBKfqVyLWtIG73fzeM="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "6.0.0"; hash = "sha256-SIO/Q+OD2bG+Q0EoOXRgJYzZMhahGXDG1fXZn0VUvv0="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "6.0.1"; hash = "sha256-v55PAURxnSGYgbv9x+4/pMeI51H27ikRfHBuUB+N5nE="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "2.0.1"; hash = "sha256-UXWzOFT0lc2Jtt3zNJ4xCEv0LCRPnWCnSoHQO2s3kZg="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "5.0.0"; hash = "sha256-0+ywPdqMkx32+HcMHqAp00cWBE7aCNc09Xh2eRObHTs="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "6.0.0"; hash = "sha256-Evg+Ynj2QUa6Gz+zqF+bUyfGD0HI5A2fHmxZEXbn3HA="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "6.0.0"; hash = "sha256-7NZcKkiXWSuhhVcA/fXHPY/62aGUyMsRdiHm91cWC5Y="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.CommandLine"; version = "6.0.0"; hash = "sha256-jFACPqLvGo14eg4G3hV/UYY/d9i3hNKvgL+3nnDGZME="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "6.0.1"; hash = "sha256-h0Q7CJ/xrtaaVs3gAdW9+TgMZ8bilQfOq2NKdr/Dt5s="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "6.0.0"; hash = "sha256-PLnSa0JMfDC62OTv8sL0QFJbANE7QSnJ997ySFBS1go="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "6.0.0"; hash = "sha256-owzLlamhIWWEoV2oumAxv4G3IlYzYGaDse0GVb8u1LA="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.UserSecrets"; version = "6.0.1"; hash = "sha256-YTbqJElzPCfph1Nxyq2PUGV5lSY5GXFdshpKOPdvTTk="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "2.2.0"; hash = "sha256-k/3UKceE1hbgv1sfV9H85hzWvMwooE8PcasHvHMhe1M="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "5.0.0"; hash = "sha256-RN478YJQE0YM0g+JztXp00w57CIF4bb48hSD/z3jTZc="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.0"; hash = "sha256-gZuMaunMJVyvvepuzNodGPRc6eqKH//bks3957dYkPI="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.1"; hash = "sha256-V+CulDoU3NXWn5EjH64JhDVQ0h+ev5BW95T+2uL1hU4="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.0.0"; hash = "sha256-H1rEnq/veRWvmp8qmUsrQkQIcVlKilUNzmmKsxJ0md8="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.2.0"; hash = "sha256-pf+UQToJnhAe8VuGjxyCTvua1nIX8n5NHzAUk3Jz38s="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "5.0.0"; hash = "sha256-0sfuxZ07HsMZJpKatDrW6I671uJBYWsUgAyoDZA2n50="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "6.0.0"; hash = "sha256-SZke0jNKIqJvvukdta+MgIlGsrP2EdPkkS8lfLg7Ju4="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "7.0.0"; hash = "sha256-55lsa2QdX1CJn1TpW1vTnkvbGXKCeE9P0O6AkW49LaA="; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "2.1.0"; hash = "sha256-7dFo5itkB2OgSgS7dN87h0Xf2p5/f6fl2Ka6+CTEhDY="; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "6.0.0"; hash = "sha256-uBjWjHKEXjZ9fDfFxMjOou3lhfTNhs1yO+e3fpWreLk="; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "6.0.0"; hash = "sha256-5BAQOqnaEXM2YjdrmrCinXBeZ5FKxCWtebEXMdwcbMY="; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "2.0.1"; hash = "sha256-QBdcLyJAHf10+RUlquXWTs155FZmHDRKbL0uzXZZPVw="; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "6.0.0"; hash = "sha256-RAWHjkkfvGpjc49Q0kJbZyXgU6UEq/EJ0j557sj2/iU="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting"; version = "6.0.1"; hash = "sha256-L57B/mAxkzK7QEipV0KtHzxMtsxEZ+a4FdFkn/3/XIY="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "6.0.0"; hash = "sha256-ksIPO6RhfbYx/i3su4J3sDhoL+TDnITKsgIpEqnpktc="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting.WindowsServices"; version = "6.0.2"; hash = "sha256-hgLydinnGforEzR2SCq6568IWhjnIoX8vyR3Z8xRIxg="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "5.0.0"; hash = "sha256-IyJiQk0xhESWjr231L7MsbFvFbphP6T8VwlKgVGgQeE="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "6.0.0"; hash = "sha256-8WsZKRGfXW5MsXkMmNVf6slrkw+cR005czkOP2KUqTk="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "2.0.1"; hash = "sha256-J/NwPGVWtiNpwHP9M0tDR1eNUcFiz/r1Sn5v2xuE0tA="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "5.0.0"; hash = "sha256-jJtcchUS8Spt/GddcDtWa4lN1RAVQ2sxDnu1cgwa6vs="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "6.0.0"; hash = "sha256-QNqcQ3x+MOK7lXbWkCzSOWa/2QyYNbdM/OEEbWN15Sw="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Configuration"; version = "6.0.0"; hash = "sha256-IeMOza71UDzsEIVIlYuI0RYKk+d+VOC6zCqYCQs6nV4="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Console"; version = "6.0.0"; hash = "sha256-LQw/najhYDdvtrsogHEQue+U+/+YJcgyBP+3MTJYA40="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Debug"; version = "6.0.0"; hash = "sha256-kweko71W7/hIAUO3ZYYbNXksVLgj8wrDN028QthMFCs="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventLog"; version = "6.0.0"; hash = "sha256-1BXQjw/ySWmddAZ79bv3OhmC4SPTG8PHyTOlrNEUb0g="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventSource"; version = "6.0.0"; hash = "sha256-j2Begn1+Xoa+9yPoQC6b6aPmUIpBrjkTGQhRhYfJaDI="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "2.0.1"; hash = "sha256-hbe+3YXlSQ3urCX11D2MIZl1XrWvr+mmnBc/bj53zfY="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "5.0.0"; hash = "sha256-Xq2JIa2Rg9vnLnZ75k4ydyT4j2A+G6UUx6iDc959teU="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "6.0.0"; hash = "sha256-DxnEgGiCXpkrxFkxXtOXqwaiAtoIjA8VSSWCcsW0FwE="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "6.0.0"; hash = "sha256-au0Y13cGk/dQFKuvSA5NnP/++bErTk0oOTlgmHdI2Mw="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "2.0.0"; hash = "sha256-q44LtMvyNEKSvgERvA+BrasKapP92Sc91QR4u2TJ9/Y="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; hash = "sha256-pj1BdHlmYm5HZifp/yB3lwDkdw0/jcIF0vYg6O1kmGs="; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; hash = "sha256-AgvysszpQ11AiTBJFkvSy8JnwIWTj15Pfek7T7ThUc4="; }) + (fetchNuGet { pname = "Microsoft.Identity.Client"; version = "4.21.1"; hash = "sha256-Q+d1QuLmjIoNGNUxm5GWzQI4hthiP6qCEl0D6/CMn4U="; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "6.8.0"; hash = "sha256-4mCms3v1kknXCgRp51SluUFy2o7BqHCMfGMwHmlFrok="; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "6.8.0"; hash = "sha256-w3jP0TAD3D2HLWlY0meGDmbV7N5kc2Er2nfYmuq0TJo="; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Protocols"; version = "6.8.0"; hash = "sha256-ozEaJYgasrhq5FSyzjv7GdOiZaJjgQiR7yqnhcQ/gXw="; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Protocols.OpenIdConnect"; version = "6.8.0"; hash = "sha256-SlNniRDfV3Cr62/ABkDkN+khyIrhr9c8/PeelZFrpL4="; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "6.8.0"; hash = "sha256-NJsIvWJwrVrQndhHDpXf7eS1Gr/+2ua9nkW5ivWQyFY="; }) + (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.5.0"; hash = "sha256-XgahgoL+VfAN4NB6qxeAHxvGj9s1Dsl9wLSSPlEU/wE="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; hash = "sha256-mZotlGZqtrqDSoBrZhsxFe6fuOv5/BIo0w2Z2x0zVAU="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; hash = "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "3.1.0"; hash = "sha256-cnygditsEaU86bnYtIthNMymAHqaT/sf9Gjykhzqgb0="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; hash = "sha256-LIcg1StDcQLPOABp4JRXIs837d7z0ia6+++3SF3jl1c="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; hash = "sha256-lxxw/Gy32xHi0fLgFWNj4YTFBSBkjx5l6ucmbTyf7V4="; }) + (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; hash = "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ="; }) + (fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.6.14"; hash = "sha256-dSJUic2orPGfYVgto9DieRckbtLpPyxHtf+RJ2tmKPM="; }) + (fetchNuGet { pname = "Microsoft.SourceLink.Common"; version = "1.1.1"; hash = "sha256-b4FaNFneDVDbvJVX1iNyhhLTrnxUfnmyypeJr47GbXY="; }) + (fetchNuGet { pname = "Microsoft.SourceLink.GitHub"; version = "1.1.1"; hash = "sha256-3hc9ym5ReONp00ruCKio/Ka1gYXo/jDlUHtfK1wZPiU="; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "16.9.1"; hash = "sha256-LZJLTWU2DOnuBiN/g+S+rwG2/BJtKrjydKnj3ujp98U="; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.5.0"; hash = "sha256-mj5UH+aqVk7f3Uu0+L47aqZUudJNCx3Lk7cbP4fzcmI="; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.7.1"; hash = "sha256-KfqM1E0jhAg07QfpjfEcjQ+HX13XZfdvveT5qxm89Sk="; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.5.0"; hash = "sha256-A/LU0UTQ7ee9n1Yww8FGPGELvYTPkjeRWvkhW/KY4J0="; }) + (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; hash = "sha256-mBNDmPXNTW54XLnPAUwBRvkIORFM7/j0D0I2SyQPDEg="; }) + (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.3.0"; hash = "sha256-50XwFbyRfZkTD/bBn76WV/NIpOy/mzXD3MMEVFX/vr8="; }) + (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.7.0"; hash = "sha256-+jWCwRqU/J/jLdQKDFm93WfIDrDMXMJ984UevaQMoi8="; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "4.7.0"; hash = "sha256-GHxnD1Plb32GJWVWSv0Y51Kgtlb+cdKgOYVBYZSgVF4="; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; hash = "sha256-mGUKg+bmB5sE/DCwsTwCsbe00MCwpgxsVW3nCtQiSmo="; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; hash = "sha256-N9EVZbl5w1VnMywGXyaVWzT9lh84iaJ3aD48hIBk1zA="; }) + (fetchNuGet { pname = "MimeKit"; version = "3.6.0"; hash = "sha256-z6s6cAHlU9XaKdQtjfh21pJOG63lE2XAAtJioIdrpFA="; }) + (fetchNuGet { pname = "Mono.Cecil"; version = "0.11.1"; hash = "sha256-J8+oOA/aJIit4nmhZ3NugJKRupHp9SgivRZUvMHP+jA="; }) + (fetchNuGet { pname = "Mono.Cecil"; version = "0.11.2"; hash = "sha256-qvQjZ5FXIJ+yu4F5EXvxzPUST94vmAZQidcapaRvkYQ="; }) + (fetchNuGet { pname = "Mono.Nat"; version = "3.0.1"; hash = "sha256-AG7yzcuXoPFMBtJfWZbOZwx97TMemI16HhP9qHliw/c="; }) + (fetchNuGet { pname = "Mono.Posix.NETStandard"; version = "5.20.1.34-servarr24"; hash = "sha256-aqzdoJkz+Vnof1hM9NCccE+/5otsiEvuF+ZiEztAz7Y="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/9845f7c9-6c8c-4845-b5ee-58375c59e0d8/nuget/v3/flat2/mono.posix.netstandard/5.20.1.34-servarr24/mono.posix.netstandard.5.20.1.34-servarr24.nupkg"; }) + (fetchNuGet { pname = "MonoMod.Common"; version = "20.5.7.1"; hash = "sha256-LwfM2W7oNaX8l34NjD1RFlekMkDwy0G+KoMEW04MRqk="; }) + (fetchNuGet { pname = "MonoTorrent"; version = "2.0.7"; hash = "sha256-XaFeK3ornvYeLL1YuR60Yjne/hIOgb0orQ4duZ2AFgw="; }) + (fetchNuGet { pname = "Moq"; version = "4.18.4"; hash = "sha256-JOmYlcTJdQOthRxnT0jAD6WG+NVLMmIV2BM9rNhNg3Q="; }) + (fetchNuGet { pname = "NBuilder"; version = "6.1.0"; hash = "sha256-3EulDuYIUjs2PyKJVLzMgMr9opLik8A8v3hMZ10qEZ8="; }) + (fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; hash = "sha256-iNan1ix7RtncGWC9AjAZ2sk70DoxOsmEOgQ10fXm4Pw="; }) + (fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; hash = "sha256-Pp7fRylai8JrE1O+9TGfIEJrAOmnWTJRLWE+qJBahK0="; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; hash = "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo="; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; hash = "sha256-hy/BieY4qxBWVVsDqqOPaLy1QobiIapkbrESm6v2PHc="; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "9.0.1"; hash = "sha256-mYCBrgUhIJFzRuLLV9SIiIFHovzfR8Uuqfg6e08EnlU="; }) + (fetchNuGet { pname = "NLog"; version = "4.7.11"; hash = "sha256-XEl2ISxP2sx5b+av3QVF6LWim4JPyepdnr8zA/H1b28="; }) + (fetchNuGet { pname = "NLog"; version = "4.7.14"; hash = "sha256-dogq2n5I62JnY+qsTnWHsLlhSvDqc5PRSjBvIBztU94="; }) + (fetchNuGet { pname = "NLog.Extensions.Logging"; version = "1.7.4"; hash = "sha256-RGQxi7tcoGLLn1kQbXc3cA3DUetwAwqHeDLJsXWaNNI="; }) + (fetchNuGet { pname = "NLog.Targets.Syslog"; version = "6.0.3"; hash = "sha256-3ZXMJzzKNFKkZn43adJgZx+fdA2TnMdfeMMl3SNkoZ0="; }) + (fetchNuGet { pname = "NodaTime"; version = "3.0.0"; hash = "sha256-kOiGkTez5eIWsBJVYURe8WRuyIhQgMiq/c/m42+XZuY="; }) + (fetchNuGet { pname = "Npgsql"; version = "7.0.7"; hash = "sha256-AvHPEO2QP7r0kCOHSLhXLJDzYMOLGH2dyhHgEUPSWuc="; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.0.0"; hash = "sha256-WWLh+v9Y9as+WURW8tUPowQB8HWIiVJzbpKzEWTdMqI="; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; hash = "sha256-n+hxcrf+sXM80Tv9YH9x4+hwTslVidFq4tjBNPAzYnM="; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "6.5.0"; hash = "sha256-ElqfN4CcKxT3hP2qvxxObb4mnBlYG89IMxO0Sm5oZ2g="; }) + (fetchNuGet { pname = "NUnit"; version = "3.13.3"; hash = "sha256-Zn+sJIF7ieNqu/t2RwJx6WPFb1jl9UuNHidb/Px0v3E="; }) + (fetchNuGet { pname = "NUnit3TestAdapter"; version = "3.17.0"; hash = "sha256-ZlpEM9IQlqsRPmYPMN6yCbICfakSoY89y40xtMY3rE8="; }) + (fetchNuGet { pname = "NunitXml.TestLogger"; version = "3.0.131"; hash = "sha256-5IqI/e+nm90CAaZHrcbYfCY+zu5FVcpAbV0CmsdOKyg="; }) + (fetchNuGet { pname = "Polly"; version = "8.3.1"; hash = "sha256-VPPoVGvEJBHoUR4hU57sdY2pF3P9igLSQSBtPRLRB6c="; }) + (fetchNuGet { pname = "Polly.Core"; version = "8.3.1"; hash = "sha256-i1R9e4aKZ5U+y96+GOxTknsAtGn7fmeBNSdfzhqe1Jc="; }) + (fetchNuGet { pname = "Portable.BouncyCastle"; version = "1.9.0"; hash = "sha256-GOXM4TdTTodWlGzEfbMForTfTQI/ObJGnFZMSD6X8E4="; }) + (fetchNuGet { pname = "RestSharp"; version = "106.15.0"; hash = "sha256-8UChXxz7AQmQpoozSBfwB6NVmt2+uJcN8TH7RtVfT7w="; }) + (fetchNuGet { pname = "ReusableTasks"; version = "2.0.0"; hash = "sha256-SjWKCeZtLkpDYzPuhHIJuLHjzAMFjm9jJSb0iWwyT2E="; }) + (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; hash = "sha256-4PGZqyWhZ6/HCTF2KddDsbmTTjxs2oW79YfkberDZS8="; }) + (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; hash = "sha256-8yLKFt2wQxkEf7fNfzB+cPUCjYn2qbqNgQ1+EeY2h/I="; }) + (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; hash = "sha256-dsmTLGvt8HqRkDWP8iKVXJCS+akAzENGXKPV18W2RgI="; }) + (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; hash = "sha256-PaiITTFI2FfPylTEk7DwzfKeiA/g/aooSU1pDcdwWLU="; }) + (fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; hash = "sha256-AYh39tgXJVFu8aLi9Y/4rK8yWMaza4S4eaxjfcuEEL4="; }) + (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; hash = "sha256-vej7ySRhyvM3pYh/ITMdC25ivSd0WLZAaIQbYj/6HVE="; }) + (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; hash = "sha256-ns6f++lSA+bi1xXgmW1JkWFb2NaMD+w+YNTfMvyAiQk="; }) + (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; hash = "sha256-Y2AnhOcJwJVYv7Rp6Jz6ma0fpITFqJW+8rsw106K2X8="; }) + (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; hash = "sha256-LkPXtiDQM3BcdYkAm5uSNOiz3uF4J45qpxn5aBiqNXQ="; }) + (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; hash = "sha256-9EvnmZslLgLLhJ00o5MWaPuJQlbUFcUF8itGQNVkcQ4="; }) + (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; hash = "sha256-qwhNXBaJ1DtDkuRacgHwnZmOZ1u9q7N8j0cWOLYOELM="; }) + (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; hash = "sha256-PQRACwnSUuxgVySO1840KvqCC9F8iI9iTzxNW0RcBS4="; }) + (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; hash = "sha256-Kaw5PnLYIiqWbsoF3VKJhy7pkpoGsUwn4ZDCKscbbzA="; }) + (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; hash = "sha256-Q18B9q26MkWZx68exUfQT30+0PGmpFlDgaF0TnaIGCs="; }) + (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; hash = "sha256-6MYj0RmLh4EVqMtO/MRqBi0HOn5iG4x9JimgCCJ+EFM="; }) + (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; hash = "sha256-agdOM0NXupfHbKAQzQT8XgbI9B8hVEh+a/2vqeHctg4="; }) + (fetchNuGet { pname = "runtime.any.System.Threading.Timer"; version = "4.3.0"; hash = "sha256-BgHxXCIbicVZtpgMimSXixhFC3V+p5ODqeljDjO8hCs="; }) + (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-LXUPLX3DJxsU1Pd3UwjO1PO9NM2elNEDXeu2Mu/vNps="; }) + (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-qeSqaUI80+lqw5MK4vMpmO0CZaqrmYktwp6L+vQAb0I="; }) + (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-SrHqT9wrCBsxILWtaJgGKd6Odmxm8/Mh7Kh0CUkZVzA="; }) + (fetchNuGet { pname = "runtime.native.System"; version = "4.0.0"; hash = "sha256-bmaM0ovT4X4aqDJOR255Yda/u3fmHZskU++lMnsy894="; }) + (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; hash = "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y="; }) + (fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; hash = "sha256-DWnXs4vlKoU6WxxvCArTJupV6sX3iBbZh8SbqfHace8="; }) + (fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; hash = "sha256-c556PyheRwpYhweBjSfIwEyZHnAUB8jWioyKEcp/2dg="; }) + (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; hash = "sha256-2IhBv0i6pTcOyr8FFIyfPEaaCHUmJZ8DYwLUwJ+5waw="; }) + (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I="; }) + (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-wyv00gdlqf8ckxEdV7E+Ql9hJIoPcmYEuyeWb5Oz3mM="; }) + (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-zi+b4sCFrA9QBiSGDD7xPV27r3iHGlV99gpyVUjRmc4="; }) + (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; hash = "sha256-serkd4A7F6eciPiPJtUyJyxzdAtupEcWIZQ9nptEzIM="; }) + (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-gybQU6mPgaWV3rBG2dbH6tT3tBq8mgze3PROdsuWnX0="; }) + (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-VsP72GVveWnGUvS/vjOQLv1U80H2K8nZ4fDAmI61Hm4="; }) + (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-4yKGa/IrNCKuQ3zaDzILdNPD32bNdy6xr5gdJigyF5g="; }) + (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-HmdJhhRsiVoOOCcUvAwdjpMRiyuSwdcgEv2j9hxi+Zc="; }) + (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-pVFUKuPPIx0edQKjzRon3zKq8zhzHEzko/lc01V/jdw="; }) + (fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; hash = "sha256-LZb23lRXzr26tRS5aA0xyB08JxiblPDoA7HBvn6awXg="; }) + (fetchNuGet { pname = "runtime.unix.System.Console"; version = "4.3.0"; hash = "sha256-AHkdKShTRHttqfMjmi+lPpTuCrM5vd/WRy6Kbtie190="; }) + (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; hash = "sha256-ReoazscfbGH+R6s6jkg5sIEHWNEvjEoHtIsMbpc7+tI="; }) + (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; hash = "sha256-Pf4mRl6YDK2x2KMh0WdyNgv0VUNdSKVDLlHqozecy5I="; }) + (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; hash = "sha256-pHJ+I6i16MV6m77uhTC6GPY6jWGReE3SSP3fVB59ti0="; }) + (fetchNuGet { pname = "runtime.unix.System.Net.Sockets"; version = "4.3.0"; hash = "sha256-IvgOeA2JuBjKl5yAVGjPYMPDzs9phb3KANs95H9v1w4="; }) + (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; hash = "sha256-c5tXWhE/fYbJVl9rXs0uHh3pTsg44YD1dJvyOA0WoMs="; }) + (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; hash = "sha256-l8S9gt6dk3qYG6HYonHtdlYtBKyPb29uQ6NDjmrt3V4="; }) + (fetchNuGet { pname = "Sentry"; version = "4.0.2"; hash = "sha256-TzsAxAYqB2SdcSl+r92+nd5obgUBW1DCFP/nXzAZE4U="; }) + (fetchNuGet { pname = "Servarr.FFMpegCore"; version = "4.7.0-26"; hash = "sha256-oGzgsbJ4sxuhIVgNP4oHLjD2enF1cV+AXwJndNrfFIY="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/783c2dce-dbc3-4218-8816-4a5e12af4d84/nuget/v3/flat2/servarr.ffmpegcore/4.7.0-26/servarr.ffmpegcore.4.7.0-26.nupkg"; }) + (fetchNuGet { pname = "Servarr.FFprobe"; version = "5.1.4.112"; hash = "sha256-OdPIvZcrGj0XaqFJQCnrPt0zgPPvB5nd7WpYFF9Bnh0="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/783c2dce-dbc3-4218-8816-4a5e12af4d84/nuget/v3/flat2/servarr.ffprobe/5.1.4.112/servarr.ffprobe.5.1.4.112.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator"; version = "3.3.2.9"; hash = "sha256-vJEcb2uxbOAoYB8niFO+f3Zer7iNkfx6kF8NNkIjy9M="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator/3.3.2.9/servarr.fluentmigrator.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Abstractions"; version = "3.3.2.9"; hash = "sha256-lYrOaKbdDkxspsAOhnHj7QwQtR3tyy7Gy2K/9gaCBpg="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.abstractions/3.3.2.9/servarr.fluentmigrator.abstractions.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Extensions.Oracle"; version = "3.3.2.9"; hash = "sha256-0vHyF48Jr9ZWaA8oQGoKAWWoddLKf/3Vi68GhJ6um5M="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.oracle/3.3.2.9/servarr.fluentmigrator.extensions.oracle.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Extensions.Postgres"; version = "3.3.2.9"; hash = "sha256-D0AuYHgvs8/rALlHoMj5KCLhpp84YZ7nat4Y27sMDW8="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.postgres/3.3.2.9/servarr.fluentmigrator.extensions.postgres.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Extensions.SqlAnywhere"; version = "3.3.2.9"; hash = "sha256-i2o82mr8cNVnP6yryzCKpVlhvlCSugphoICorDiR59c="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.sqlanywhere/3.3.2.9/servarr.fluentmigrator.extensions.sqlanywhere.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Extensions.SqlServer"; version = "3.3.2.9"; hash = "sha256-Hw1CHZ5ZewkLKWpRH42Nm4rBv33aFFGPBhPZn1DjQRM="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.extensions.sqlserver/3.3.2.9/servarr.fluentmigrator.extensions.sqlserver.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner"; version = "3.3.2.9"; hash = "sha256-koza7zbpTLpzFEnlrLkVxPVSSgZcD9bECZuFVFDZFQg="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner/3.3.2.9/servarr.fluentmigrator.runner.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Core"; version = "3.3.2.9"; hash = "sha256-wLwHIeJrn/c3fKZG/xBf0Wxe0C/YFw4uDL5oDHgjw6c="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.core/3.3.2.9/servarr.fluentmigrator.runner.core.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Db2"; version = "3.3.2.9"; hash = "sha256-ciLtDPc4H/3JCa27ssdBMjNhxmW6polIRygauK0Ca8Y="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.db2/3.3.2.9/servarr.fluentmigrator.runner.db2.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Firebird"; version = "3.3.2.9"; hash = "sha256-rLNjYe0seSWj3YFvaaToCHZmHxi2Texu7i4NW/zgux0="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.firebird/3.3.2.9/servarr.fluentmigrator.runner.firebird.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Hana"; version = "3.3.2.9"; hash = "sha256-7Cmn2kwdoWwX+yNCQ6GPICLaPVSCPAbraLj/GHAX0YE="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.hana/3.3.2.9/servarr.fluentmigrator.runner.hana.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.MySql"; version = "3.3.2.9"; hash = "sha256-MY4G+SFZqmQSeValnUVNz5QP1BU4Hv/CSOdrpsz179k="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.mysql/3.3.2.9/servarr.fluentmigrator.runner.mysql.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Oracle"; version = "3.3.2.9"; hash = "sha256-4Gy/rhaGYYhwtKywuxA5ECRJkYPu5chS4Iq9shf4J3g="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.oracle/3.3.2.9/servarr.fluentmigrator.runner.oracle.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Postgres"; version = "3.3.2.9"; hash = "sha256-MaZjUZENrdyzFDTVcJfDh4xIvbE7m8hLD2sUrZhgR54="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.postgres/3.3.2.9/servarr.fluentmigrator.runner.postgres.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.Redshift"; version = "3.3.2.9"; hash = "sha256-jnKGzc/saQ8g7Xnqh/qE8divtR1z2tpAC16t6mIpwPA="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.redshift/3.3.2.9/servarr.fluentmigrator.runner.redshift.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.SqlAnywhere"; version = "3.3.2.9"; hash = "sha256-qZ3tBRp8tkhzn8dCE90Lkqg5lT8QnZVp8hIulpSa7rs="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlanywhere/3.3.2.9/servarr.fluentmigrator.runner.sqlanywhere.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.SQLite"; version = "3.3.2.9"; hash = "sha256-dfRiBhT0kwhcWyc2Ib2rbzZj4ZlPfWI0u2CF8QljA6Q="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlite/3.3.2.9/servarr.fluentmigrator.runner.sqlite.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.SqlServer"; version = "3.3.2.9"; hash = "sha256-mDIfUT35CqEUbf858hrtJE0E65U7ZJlygoZAHi2Hlf8="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlserver/3.3.2.9/servarr.fluentmigrator.runner.sqlserver.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "Servarr.FluentMigrator.Runner.SqlServerCe"; version = "3.3.2.9"; hash = "sha256-kx3ZjLj1zz/1buiWrAJPuB5GXCohpntpq4ak5WG1SR4="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/323efe4e-c7d8-4bcd-acfe-5afb38d520bf/nuget/v3/flat2/servarr.fluentmigrator.runner.sqlserverce/3.3.2.9/servarr.fluentmigrator.runner.sqlserverce.3.3.2.9.nupkg"; }) + (fetchNuGet { pname = "SharpZipLib"; version = "1.4.2"; hash = "sha256-/giVqikworG2XKqfN9uLyjUSXr35zBuZ2FX2r8X/WUY="; }) + (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.1.4"; hash = "sha256-zOqHVIInvJiqmx4JF+8USYvdKAGRZVUqQpdncrrjRjM="; }) + (fetchNuGet { pname = "Swashbuckle.AspNetCore.Annotations"; version = "6.6.2"; hash = "sha256-iL7TcRFy7g6EB8usWALwdOEaiqLsD0b+RXkepHk43+o="; }) + (fetchNuGet { pname = "Swashbuckle.AspNetCore.Swagger"; version = "6.6.2"; hash = "sha256-HqMmHMZXYHlRMoT3vIZF8iwhYmfknQmi3N8VmyfwI0k="; }) + (fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerGen"; version = "6.6.2"; hash = "sha256-km+bNoRDakEBa2dIjtxK0V6YVvm9hEpdi8xWQ8TJigI="; }) + (fetchNuGet { pname = "System.AppContext"; version = "4.1.0"; hash = "sha256-v6YfyfrKmhww+EYHUq6cwYUMj00MQ6SOfJtcGVRlYzs="; }) + (fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; hash = "sha256-yg95LNQOwFlA1tWxXdQkVyJqT4AnoDc+ACmrNvzGiZg="; }) + (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; hash = "sha256-XqZWb4Kd04960h4U9seivjKseGA/YEIpdplfHYHQ9jk="; }) + (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; hash = "sha256-puoFMkx4Z55C1XPxNw3np8nzNGjH+G24j43yTIsDRL0="; }) + (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; hash = "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc="; }) + (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; hash = "sha256-KMY5DfJnDeIsa13DpqvyN8NkReZEMAFnlmNglVoFIXI="; }) + (fetchNuGet { pname = "System.Collections.NonGeneric"; version = "4.3.0"; hash = "sha256-8/yZmD4jjvq7m68SPkJZLBQ79jOTOyT5lyzX4SCYAx8="; }) + (fetchNuGet { pname = "System.Collections.Specialized"; version = "4.3.0"; hash = "sha256-QNg0JJNx+zXMQ26MJRPzH7THdtqjrNtGLUgaR1SdvOk="; }) + (fetchNuGet { pname = "System.ComponentModel"; version = "4.3.0"; hash = "sha256-i00uujMO4JEDIEPKLmdLY3QJ6vdSpw6Gh9oOzkFYBiU="; }) + (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.4.1"; hash = "sha256-8NZ0tWPqRYf3ovkn4OQapGsHeseEYKg91nqZAU33hrQ="; }) + (fetchNuGet { pname = "System.ComponentModel.EventBasedAsync"; version = "4.3.0"; hash = "sha256-h7o4X3XojdRyJWQdUfZetLdqtrQlddMzxhh6j9Zcaec="; }) + (fetchNuGet { pname = "System.ComponentModel.Primitives"; version = "4.3.0"; hash = "sha256-IOMJleuIBppmP4ECB3uftbdcgL7CCd56+oAD/Sqrbus="; }) + (fetchNuGet { pname = "System.ComponentModel.TypeConverter"; version = "4.3.0"; hash = "sha256-PSDiPYt8PgTdTUBz+GH6lHCaM1YgfObneHnZsc8Fz54="; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "4.4.0"; hash = "sha256-+8wGYllXnIxRzy9dLhZFB88GoPj8ivYXS0KUfcivT8I="; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "4.7.0"; hash = "sha256-rYjp/UmagI4ZULU1ocia/AiXxLNL8uhMV8LBF4QFW10="; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "6.0.1"; hash = "sha256-U/0HyekAZK5ya2VNfGA1HeuQyJChoaqcoIv57xLpzLQ="; }) + (fetchNuGet { pname = "System.Console"; version = "4.3.0"; hash = "sha256-Xh3PPBZr0pDbDaK8AEHbdGz7ePK6Yi1ZyRWI1JM6mbo="; }) + (fetchNuGet { pname = "System.Data.SQLite.Core.Servarr"; version = "1.0.115.5-18"; hash = "sha256-H6QvKNKkW6PwHwDWAUVeXlqz9fJTEwIAS3YtcbOwpTc="; url = "https://pkgs.dev.azure.com/Servarr/7ab38f4e-5a57-4d70-84f4-94dd9bc5d6df/_packaging/f762697f-09fa-4960-89a1-64e48069bf6a/nuget/v3/flat2/system.data.sqlite.core.servarr/1.0.115.5-18/system.data.sqlite.core.servarr.1.0.115.5-18.nupkg"; }) + (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; hash = "sha256-P+rSQJVoN6M56jQbs76kZ9G3mAWFdtF27P/RijN8sj4="; }) + (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; hash = "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM="; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; hash = "sha256-OFJRb0ygep0Z3yDBLwAgM/Tkfs4JCDtsNhwDH9cd1Xw="; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.7.0"; hash = "sha256-wSJTNjJGcEa0tOrXXHGNVkjPpBPnLLP7ZKpQ9FvZIDM="; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "6.0.0"; hash = "sha256-RY9uWSPdK2fgSwlj1OHBGBVo3ZvGQgBJNzAsS5OGMWc="; }) + (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "6.0.0"; hash = "sha256-zUXIQtAFKbiUMKCrXzO4mOTD5EUphZzghBYKXprowSM="; }) + (fetchNuGet { pname = "System.Diagnostics.Process"; version = "4.3.0"; hash = "sha256-Rzo24qXhuJDDgrGNHr2eQRHhwLmsYmWDqAg/P5fOlzw="; }) + (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; hash = "sha256-vSBqTbmWXylvRa37aWyktym+gOpsvH43mwr6A962k6U="; }) + (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; hash = "sha256-gVOv1SK6Ape0FQhCVlNOd9cvQKBvMxRX9K0JPVi8w0Y="; }) + (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; hash = "sha256-hCETZpHHGVhPYvb4C0fh4zs+8zv4GPoixagkLZjpa9Q="; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "4.7.0"; hash = "sha256-D3qG+xAe78lZHvlco9gHK2TEAM370k09c6+SQi873Hk="; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "5.0.2"; hash = "sha256-+g0aHEpoLVNfmFY3/CaFiM6aMLiZQt0B4hDy8riPbyI="; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "6.0.0"; hash = "sha256-/9EaAbEeOjELRSMZaImS1O8FmUe8j4WuFUw1VOrPyAo="; }) + (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; hash = "sha256-qWqFVxuXioesVftv2RVJZOnmojUvRjb7cS3Oh3oTit4="; }) + (fetchNuGet { pname = "System.Formats.Asn1"; version = "6.0.0"; hash = "sha256-KaMHgIRBF7Nf3VwOo+gJS1DcD+41cJDPWFh+TDQ8ee8="; }) + (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; hash = "sha256-rbSgc2PIEc2c2rN6LK3qCREAX3DqA2Nq1WcLrZYsDBw="; }) + (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; hash = "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI="; }) + (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; hash = "sha256-uNOD0EOVFgnS2fMKvMiEtI9aOw00+Pfy/H+qucAQlPc="; }) + (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; hash = "sha256-mmJWA27T0GRVuFP9/sj+4TrR4GJWrzNIk2PDrbr7RQk="; }) + (fetchNuGet { pname = "System.IdentityModel.Tokens.Jwt"; version = "6.8.0"; hash = "sha256-VeiJ+iTZ0rqpZdGvgBu5pjOKcq2YMBTNdRmFU553DMg="; }) + (fetchNuGet { pname = "System.IO"; version = "4.1.0"; hash = "sha256-V6oyQFwWb8NvGxAwvzWnhPxy9dKOfj/XBM3tEC5aHrw="; }) + (fetchNuGet { pname = "System.IO"; version = "4.3.0"; hash = "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY="; }) + (fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; hash = "sha256-f5PrQlQgj5Xj2ZnHxXW8XiOivaBvfqDao9Sb6AVinyA="; }) + (fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; hash = "sha256-WQl+JgWs+GaRMeiahTFUbrhlXIHapzcpTFXbRvAtvvs="; }) + (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1"; hash = "sha256-4VKXFgcGYCTWVXjAlniAVq0dO3o5s8KHylg2wg2/7k0="; }) + (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; hash = "sha256-vNIYnvlayuVj0WfRfYKpDrhDptlhp1pN8CYmlVd2TXw="; }) + (fetchNuGet { pname = "System.IO.FileSystem.AccessControl"; version = "6.0.0-preview.5.21301.5"; hash = "sha256-oHuWTF2OTGQlLr9tBIybWu9r96NQp3tRLuS2j38ajzI="; }) + (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1"; hash = "sha256-IpigKMomqb6pmYWkrlf0ZdpILtRluX2cX5sOKVW0Feg="; }) + (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; hash = "sha256-LMnfg8Vwavs9cMnq9nNH8IWtAtSfk0/Fy4s4Rt9r1kg="; }) + (fetchNuGet { pname = "System.Linq"; version = "4.1.0"; hash = "sha256-ZQpFtYw5N1F1aX0jUK3Tw+XvM5tnlnshkTCNtfVA794="; }) + (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; hash = "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A="; }) + (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; hash = "sha256-7zqB+FXgkvhtlBzpcZyd81xczWP0D3uWssyAGw3t7b4="; }) + (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; hash = "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8="; }) + (fetchNuGet { pname = "System.Memory"; version = "4.5.5"; hash = "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI="; }) + (fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; hash = "sha256-UoBB7WPDp2Bne/fwxKF0nE8grJ6FzTMXdT/jfsphj8Q="; }) + (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; hash = "sha256-eGZwCBExWsnirWBHyp2sSSSXp6g7I6v53qNmwPgtJ5c="; }) + (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; hash = "sha256-MY7Z6vOtFMbEKaLW9nOSZeAjcWpwCtdO7/W1mkGZBzE="; }) + (fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; hash = "sha256-il7dr5VT/QWDg/0cuh+4Es2u8LY//+qqiY9BZmYxSus="; }) + (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; hash = "sha256-MudZ/KYcvYsn2cST3EE049mLikrNkmE7QoUoYKKby+s="; }) + (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; hash = "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q="; }) + (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; hash = "sha256-fVfgcoP4AVN1E5wHZbKBIOPYZ/xBeSIdsNF+bdukIRM="; }) + (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; hash = "sha256-idZHGH2Yl/hha1CM4VzLhsaR8Ljo/rV7TYe7mwRJSMs="; }) + (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; hash = "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY="; }) + (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; hash = "sha256-F1MvYoQWHCY89/O4JBwswogitqVvKuVfILFqA7dmuHk="; }) + (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; hash = "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU="; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; hash = "sha256-YG+eJBG5P+5adsHiw/lhJwvREnvdHw6CJyS8ZV4Ujd0="; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; hash = "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA="; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.7.0"; hash = "sha256-GUnQeGo/DtvZVQpFnESGq7lJcjB30/KnDY7Kd2G/ElE="; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; hash = "sha256-uVvNOnL64CPqsgZP2OLqNmxdkZl6Q0fTmKmv9gcBi+g="; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; hash = "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I="; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.7.0"; hash = "sha256-V0Wz/UUoNIHdTGS9e1TR89u58zJjo/wPUWw6VaVyclU="; }) + (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; hash = "sha256-NsfmzM9G/sN3H8X2cdnheTGRsh7zbRzvegnjDzDH/FQ="; }) + (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; hash = "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk="; }) + (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.5.0"; hash = "sha256-wM75ACJUeypeOdaBUj4oTYiSWmg7A1usMpwRQXjSGK8="; }) + (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; hash = "sha256-JJfgaPav7UfEh4yRAQdGhLZF1brr0tUWPl6qmfNWq/E="; }) + (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; hash = "sha256-SFSfpWEyCBMAOerrMCOiKnpT+UAWTvRcmoRquJR6Vq0="; }) + (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; hash = "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM="; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.1.0"; hash = "sha256-R0YZowmFda+xzKNR4kKg7neFoE30KfZwp/IwfRSKVK4="; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; hash = "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng="; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.7.0"; hash = "sha256-GEtCGXwtOnkYejSV+Tfl+DqyGq5jTUaVyL9eMupMHBM="; }) + (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; hash = "sha256-cZ2/3/fczLjEpn6j3xkgQV9ouOVjy4Kisgw5xWw9kSw="; }) + (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; hash = "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo="; }) + (fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; hash = "sha256-FViNGM/4oWtlP6w0JC0vJU+k9efLKZ+yaXrnEeabDQo="; }) + (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; hash = "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg="; }) + (fetchNuGet { pname = "System.Runtime.Caching"; version = "4.7.0"; hash = "sha256-/kAy2ISO6YFsdIiCSK1591QZF0jn2j/AIB+U2p0Eu68="; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.4.0"; hash = "sha256-SeTI4+yVRO2SmAKgOrMni4070OD+Oo8L1YiEVeKDyig="; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.7.1"; hash = "sha256-UvyoDV8O0oY3HPG1GbA56YVdvwTGEfjYR5gW1O7IK4U="; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; hash = "sha256-bEG1PnDp7uKYz/OgLOWs3RWwQSVYm+AnPwVmAmcgp2I="; }) + (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; hash = "sha256-X7DZ5CbPY7jHs20YZ7bmcXs9B5Mxptu/HnBUvUnNhGc="; }) + (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; hash = "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o="; }) + (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; hash = "sha256-j2QgVO9ZOjv7D1het98CoFpjoYgxjupuIhuBUmLLH7w="; }) + (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; hash = "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms="; }) + (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; hash = "sha256-QceAYlJvkPRJc/+5jR+wQpNNI3aqGySWWSO30e/FfQY="; }) + (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; hash = "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI="; }) + (fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.0.0"; hash = "sha256-5j53amb76A3SPiE3B0llT2XPx058+CgE7OXL4bLalT4="; }) + (fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.3.0"; hash = "sha256-MYpl6/ZyC6hjmzWRIe+iDoldOMW1mfbwXsduAnXIKGA="; }) + (fetchNuGet { pname = "System.Runtime.Loader"; version = "4.3.0"; hash = "sha256-syG1GTFjYbwX146BD/L7t55j+DZqpHDc6z28kdSNzx0="; }) + (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; hash = "sha256-P5jHCgMbgFMYiONvzmaKFeOqcAIDPu/U8bOVrNPYKqc="; }) + (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; hash = "sha256-80B05oxJbPLGq2pGOSl6NlZvintX9A1CNpna2aN0WRA="; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.7.0"; hash = "sha256-/9ZCPIHLdhzq7OW4UKqTsR0O93jjHd6BRG1SRwgHE1g="; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0"; hash = "sha256-qOyWEBbNr3EjyS+etFG8/zMbuPjA+O+di717JP9Cxyg="; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0-preview.5.21301.5"; hash = "sha256-/rXZ6FJNEN3EuqOsCgCuypBOpA0hQyYIQXbsGccfLow="; }) + (fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; hash = "sha256-Fua/rDwAqq4UByRVomAxMPmDBGd5eImRqHVQIeSxbks="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; hash = "sha256-tAJvNSlczYBJ3Ed24Ae27a55tq/n4D3fubNQdwcKWA8="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; hash = "sha256-u17vy6wNhqok91SrVLno2M1EzLHZm6VMca85xbVChsw="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.5.0"; hash = "sha256-9llRbEcY1fHYuTn3vGZaCxsFxSAqXl4bDA6Rz9b0pN4="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; hash = "sha256-oefdTU/Z2PWU9nlat8uiRDGq/PGZoSPRgkML11pmvPQ="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; hash = "sha256-Yuge89N6M+NcblcvXMeyHZ6kZDfwBv3LPMDiF8HhJss="; }) + (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-DL+D2sc2JrQiB4oAcUggTFyD8w3aLEjJfod5JPe+Oz4="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Pkcs"; version = "6.0.0"; hash = "sha256-xMSJGgn+UGGe9eGNaZ04OsyiFO7fYtDfz7zsya/9AOE="; }) + (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; hash = "sha256-fnFi7B3SnVj5a+BbgXnbjnGNvWrCEU6Hp/wjsjWz318="; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.4.0"; hash = "sha256-Ri53QmFX8I8UH0x4PikQ1ZA07ZSnBUXStd5rBfGWFOE="; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.7.0"; hash = "sha256-dZfs5q3Ij1W1eJCfYjxI2o+41aSiFpaAugpoECaCOug="; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "6.0.0"; hash = "sha256-Wi9I9NbZlpQDXgS7Kl06RIFxY/9674S7hKiYw5EabRY="; }) + (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; hash = "sha256-MG3V/owDh273GCUPsGGraNwaVpcydupl3EtPXj6TVG0="; }) + (fetchNuGet { pname = "System.Security.Permissions"; version = "4.7.0"; hash = "sha256-BGgXMLUi5rxVmmChjIhcXUxisJjvlNToXlyaIbUxw40="; }) + (fetchNuGet { pname = "System.Security.Permissions"; version = "6.0.0"; hash = "sha256-/MMvtFWGN/vOQfjXdOhet1gsnMgh6lh5DCHimVsnVEs="; }) + (fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; hash = "sha256-rjudVUHdo8pNJg2EVEn0XxxwNo5h2EaYo+QboPkXlYk="; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; hash = "sha256-mbdLVUcEwe78p3ZnB6jYsizNEqxMaCAWI3tEQNhRQAE="; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.7.0"; hash = "sha256-rWBM2U8Kq3rEdaa1MPZSYOOkbtMGgWyB8iPrpIqmpqg="; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "6.0.0-preview.5.21301.5"; hash = "sha256-p0ROK7zJPz4EmNdjgAz2eX8dOMVHhpvQLTU7JveMceA="; }) + (fetchNuGet { pname = "System.ServiceProcess.ServiceController"; version = "6.0.1"; hash = "sha256-ZYf+7ln6IlrSZHnoFvZyootRMsLqcUaZduJnh6mz25Y="; }) + (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; hash = "sha256-PEailOvG05CVgPTyKLtpAgRydlSHmtd5K0Y8GSHY2Lc="; }) + (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; hash = "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg="; }) + (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.7.0"; hash = "sha256-/wLj3mcmScFAD/9cxmKyQnfdbaF9Mr/lpCuEsMarygM="; }) + (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "6.0.0"; hash = "sha256-nGc2A6XYnwqGcq8rfgTRjGr+voISxNe/76k2K36coj4="; }) + (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; hash = "sha256-+kf7J3dEhgCbnCM5vHYlsTm5/R/Ud0Jr6elpHm922iI="; }) + (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; hash = "sha256-vufHXg8QAKxHlujPHHcrtGwAqFmsCD6HKjfDAiHyAYc="; }) + (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "6.0.0"; hash = "sha256-UemDHGFoQIG7ObQwRluhVf6AgtQikfHEoPLC6gbFyRo="; }) + (fetchNuGet { pname = "System.Text.Json"; version = "6.0.0"; hash = "sha256-9AE/5ds4DqEfb0l+27fCBTSeYCdRWhxh2Bhg8IKvIuo="; }) + (fetchNuGet { pname = "System.Text.Json"; version = "6.0.9"; hash = "sha256-5jjvxV8ubGYjkydDhLsGZXB6ml3O/7CGauQcu1ikeLs="; }) + (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; hash = "sha256-x6OQN6MCN7S0fJ6EFTfv4rczdUWjwuWE9QQ0P6fbh9c="; }) + (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; hash = "sha256-VLCk1D1kcN2wbAe3d0YQM/PqCsPHOuqlBY1yd2Yo+K0="; }) + (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; hash = "sha256-mob1Zv3qLQhQ1/xOLXZmYqpniNUMCfn02n8ZkaAhqac="; }) + (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; hash = "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc="; }) + (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; hash = "sha256-5SLxzFg1df6bTm2t09xeI01wa5qQglqUwwJNlQPJIVs="; }) + (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; hash = "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w="; }) + (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; hash = "sha256-+YdcPkMhZhRbMZHnfsDwpNbUkr31X7pQFGxXYcAPZbE="; }) + (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; hash = "sha256-X2hQ5j+fxcmnm88Le/kSavjiGOmkcumBGTZKBLvorPc="; }) + (fetchNuGet { pname = "System.Threading.Thread"; version = "4.3.0"; hash = "sha256-pMs6RNFC3nQOGz9EqIcyWmO8YLaqay+q/Qde5hqPXXg="; }) + (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; hash = "sha256-wW0QdvssRoaOfQLazTGSnwYTurE4R8FxDx70pYkL+gg="; }) + (fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; hash = "sha256-pmhslmhQhP32TWbBzoITLZ4BoORBqYk25OWbru04p9s="; }) + (fetchNuGet { pname = "System.ValueTuple"; version = "4.4.0"; hash = "sha256-LqpI3bSaXqVPqfEdfsWE2qX9tzFV6VPU6x4A/fVzzfM="; }) + (fetchNuGet { pname = "System.ValueTuple"; version = "4.5.0"; hash = "sha256-niH6l2fU52vAzuBlwdQMw0OEoRS/7E1w5smBFoqSaAI="; }) + (fetchNuGet { pname = "System.Windows.Extensions"; version = "4.7.0"; hash = "sha256-yW+GvQranReaqPw5ZFv+mSjByQ5y1pRLl05JIEf3tYU="; }) + (fetchNuGet { pname = "System.Windows.Extensions"; version = "6.0.0"; hash = "sha256-N+qg1E6FDJ9A9L50wmVt3xPQV8ZxlG1xeXgFuxO+yfM="; }) + (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; hash = "sha256-haZAFFQ9Sl2DhfvEbdx2YRqKEoxNMU5STaqpMmXw0zA="; }) + (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; hash = "sha256-QQ8KgU0lu4F5Unh+TbechO//zaAGZ4MfgvW72Cn1hzA="; }) + (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11"; hash = "sha256-KPz1kxe0RUBM+aoktJ/f9p51GudMERU8Pmwm//HdlFg="; }) + (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; hash = "sha256-rWtdcmcuElNOSzCehflyKwHkDRpiOhJJs8CeQ0l1CCI="; }) + (fetchNuGet { pname = "System.Xml.XmlDocument"; version = "4.3.0"; hash = "sha256-kbuV4Y7rVJkfMp2Kgoi8Zvdatm9CZNmlKB3GZgANvy4="; }) + (fetchNuGet { pname = "System.Xml.XPath"; version = "4.3.0"; hash = "sha256-kd1JMqj6obhxzEPRJeYvcUyJqkOs/9A0UOQccC6oYrM="; }) + (fetchNuGet { pname = "System.Xml.XPath.XmlDocument"; version = "4.3.0"; hash = "sha256-NWPne5KQuqUt7WvaRT1KX3kkpWv6EPTHcI6CO/GBNME="; }) +] diff --git a/pkgs/by-name/so/sonarr/nuget-config.patch b/pkgs/by-name/so/sonarr/nuget-config.patch new file mode 100644 index 0000000000000..c844b419d7a5d --- /dev/null +++ b/pkgs/by-name/so/sonarr/nuget-config.patch @@ -0,0 +1,9 @@ +Move NuGet configuration file to the source root where Nixpkgs .NET +build infrastructure expects to find it. + +https://github.com/NixOS/nixpkgs/pull/291640#discussion_r1601841807 + +diff --git a/src/NuGet.Config b/NuGet.Config +similarity index 100% +rename from src/NuGet.Config +rename to NuGet.Config diff --git a/pkgs/by-name/so/sonarr/package.nix b/pkgs/by-name/so/sonarr/package.nix new file mode 100644 index 0000000000000..6ba68993bf49c --- /dev/null +++ b/pkgs/by-name/so/sonarr/package.nix @@ -0,0 +1,161 @@ +{ lib +, fetchFromGitHub +, buildDotnetModule +, dotnetCorePackages +, sqlite +, withFFmpeg ? true # replace bundled ffprobe binary with symlink to ffmpeg package. +, ffmpeg +, fetchYarnDeps +, yarn +, fixup-yarn-lock +, nodejs +, nixosTests + # update script +, writers +, python3Packages +, nix +, prefetch-yarn-deps +}: +let + version = "4.0.8.1874"; + src = fetchFromGitHub { + owner = "Sonarr"; + repo = "Sonarr"; + rev = "v${version}"; + hash = "sha256-4WjeuVqzuUmgbKIjcQOJCNrTnT9Wn6kpVxS+1T1hqyQ="; + }; +in +buildDotnetModule { + pname = "sonarr"; + inherit version src; + + patches = [ + ./nuget-config.patch + ]; + + strictDeps = true; + nativeBuildInputs = [ nodejs yarn prefetch-yarn-deps fixup-yarn-lock ]; + + yarnOfflineCache = fetchYarnDeps { + yarnLock = "${src}/yarn.lock"; + hash = "sha256-dSZBifvUGJx5lj7C+Sj+kJprK8JG6SE5vg6+X6QdCZ8="; + }; + + ffprobe = lib.optionalDrvAttr withFFmpeg (lib.getExe' ffmpeg "ffprobe"); + + postConfigure = '' + yarn config --offline set yarn-offline-mirror "$yarnOfflineCache" + fixup-yarn-lock yarn.lock + yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive + patchShebangs --build node_modules + ''; + postBuild = '' + yarn --offline run build --env production + ''; + postInstall = lib.optionalString withFFmpeg '' + rm -- "$out/lib/sonarr/ffprobe" + ln -s -- "$ffprobe" "$out/lib/sonarr/ffprobe" + '' + '' + cp -a -- _output/UI "$out/lib/sonarr/UI" + ''; + # Add an alias for compatibility with Sonarr v3 package. + postFixup = '' + ln -s -- Sonarr "$out/bin/NzbDrone" + ''; + + nugetDeps = ./deps.nix; + + runtimeDeps = [ sqlite ]; + + dotnet-sdk = dotnetCorePackages.sdk_6_0; + dotnet-runtime = dotnetCorePackages.aspnetcore_6_0; + + doCheck = true; + + __darwinAllowLocalNetworking = true; # for tests + + __structuredAttrs = true; # for Copyright property that contains spaces + + executables = [ "Sonarr" ]; + + projectFile = [ + "src/NzbDrone.Console/Sonarr.Console.csproj" + "src/NzbDrone.Mono/Sonarr.Mono.csproj" + ]; + + testProjectFile = [ + "src/NzbDrone.Api.Test/Sonarr.Api.Test.csproj" + "src/NzbDrone.Common.Test/Sonarr.Common.Test.csproj" + "src/NzbDrone.Core.Test/Sonarr.Core.Test.csproj" + "src/NzbDrone.Host.Test/Sonarr.Host.Test.csproj" + "src/NzbDrone.Libraries.Test/Sonarr.Libraries.Test.csproj" + "src/NzbDrone.Mono.Test/Sonarr.Mono.Test.csproj" + "src/NzbDrone.Test.Common/Sonarr.Test.Common.csproj" + ]; + + dotnetFlags = [ + "--property:TargetFramework=net6.0" + "--property:EnableAnalyzers=false" + # Override defaults in src/Directory.Build.props that use current time. + "--property:Copyright=Copyright 2014-2024 sonarr.tv (GNU General Public v3)" + "--property:AssemblyVersion=${version}" + "--property:AssemblyConfiguration=main" + ]; + + # Skip manual, integration, automation and platform-dependent tests. + dotnetTestFlags = [ + "--filter:${lib.concatStringsSep "&" [ + "TestCategory!=ManualTest" + "TestCategory!=IntegrationTest" + "TestCategory!=AutomationTest" + + # setgid tests + "FullyQualifiedName!=NzbDrone.Mono.Test.DiskProviderTests.DiskProviderFixture.should_preserve_setgid_on_set_folder_permissions" + "FullyQualifiedName!=NzbDrone.Mono.Test.DiskProviderTests.DiskProviderFixture.should_clear_setgid_on_set_folder_permissions" + + # we do not set application data directory during tests (i.e. XDG data directory) + "FullyQualifiedName!=NzbDrone.Mono.Test.DiskProviderTests.FreeSpaceFixture.should_return_free_disk_space" + + # attempts to read /etc/*release and fails since it does not exist + "FullyQualifiedName!=NzbDrone.Mono.Test.EnvironmentInfo.ReleaseFileVersionAdapterFixture.should_get_version_info" + + # fails to start test dummy because it cannot locate .NET runtime for some reason + "FullyQualifiedName!=NzbDrone.Common.Test.ProcessProviderFixture.Should_be_able_to_start_process" + "FullyQualifiedName!=NzbDrone.Common.Test.ProcessProviderFixture.kill_all_should_kill_all_process_with_name" + + # makes real HTTP requests + "FullyQualifiedName!~NzbDrone.Core.Test.TvTests.RefreshEpisodeServiceFixture" + "FullyQualifiedName!~NzbDrone.Core.Test.UpdateTests.UpdatePackageProviderFixture" + + # fails on macOS + "FullyQualifiedName!~NzbDrone.Core.Test.Http.HttpProxySettingsProviderFixture" + ]}" + ]; + + passthru = { + tests = { + inherit (nixosTests) sonarr; + }; + + updateScript = writers.writePython3 "sonarr-updater" + { + libraries = with python3Packages; [ requests ]; + makeWrapperArgs = [ + "--prefix" + "PATH" + ":" + (lib.makeBinPath [ nix prefetch-yarn-deps ]) + ]; + } + ./update.py; + }; + + meta = { + description = "Smart PVR for newsgroup and bittorrent users"; + homepage = "https://sonarr.tv"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ fadenb purcell tie ]; + mainProgram = "Sonarr"; + # platforms inherited from dotnet-sdk. + }; +} diff --git a/pkgs/by-name/so/sonarr/update.py b/pkgs/by-name/so/sonarr/update.py new file mode 100644 index 0000000000000..195a2d5d05ac0 --- /dev/null +++ b/pkgs/by-name/so/sonarr/update.py @@ -0,0 +1,160 @@ +import json +import os +import pathlib +import requests +import shutil +import subprocess +import sys +import tempfile + + +def replace_in_file(file_path, replacements): + file_contents = pathlib.Path(file_path).read_text() + for old, new in replacements.items(): + if old == new: + continue + updated_file_contents = file_contents.replace(old, new) + # A dumb way to check that we’ve actually replaced the string. + if file_contents == updated_file_contents: + print(f"no string to replace: {old} → {new}", file=sys.stderr) + sys.exit(1) + file_contents = updated_file_contents + with tempfile.NamedTemporaryFile(mode="w") as t: + t.write(file_contents) + t.flush() + shutil.copyfile(t.name, file_path) + + +def nix_hash_to_sri(hash): + return subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "hash", + "to-sri", + "--type", "sha256", + "--", + hash, + ], + stdout=subprocess.PIPE, + text=True, + check=True, + ).stdout.rstrip() + + +nixpkgs_path = "." +attr_path = os.getenv("UPDATE_NIX_ATTR_PATH", "sonarr") + +package_attrs = json.loads(subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "eval", + "--json", + "--file", nixpkgs_path, + "--apply", """p: { + dir = builtins.dirOf p.meta.position; + version = p.version; + sourceHash = p.src.outputHash; + yarnHash = p.yarnOfflineCache.outputHash; + }""", + "--", + attr_path, + ], + stdout=subprocess.PIPE, + text=True, + check=True, +).stdout) + +old_version = package_attrs["version"] +new_version = old_version + +# Note that we use Sonarr API instead of GitHub to fetch latest stable release. +# This corresponds to the Updates tab in the web UI. See also +# https://github.com/Sonarr/Sonarr/blob/070919a7e6a96ca7e26524996417c6f8d1b5fcaa/src/NzbDrone.Core/Update/UpdatePackageProvider.cs +version_update = requests.get( + f"https://services.sonarr.tv/v1/update/main?version={old_version}", +).json() +if version_update["available"]: + new_version = version_update["updatePackage"]["version"] + +if new_version == old_version: + sys.exit() + +source_nix_hash, source_store_path = subprocess.run( + [ + "nix-prefetch-url", + "--name", "source", + "--unpack", + "--print-path", + f"https://github.com/Sonarr/Sonarr/archive/v{new_version}.tar.gz", + ], + stdout=subprocess.PIPE, + text=True, + check=True, +).stdout.rstrip().split("\n") + +old_source_hash = package_attrs["sourceHash"] +new_source_hash = nix_hash_to_sri(source_nix_hash) + +old_yarn_hash = package_attrs["yarnHash"] +new_yarn_hash = nix_hash_to_sri(subprocess.run( + [ + "prefetch-yarn-deps", + # does not support "--" separator :( + # Also --verbose writes to stdout, yikes. + os.path.join(source_store_path, "yarn.lock"), + ], + stdout=subprocess.PIPE, + text=True, + check=True, +).stdout.rstrip()) + +package_dir = package_attrs["dir"] +package_file_name = "package.nix" +deps_file_name = "deps.nix" + +# To update deps.nix, we copy the package to a temporary directory and run +# passthru.fetch-deps script there. +with tempfile.TemporaryDirectory() as work_dir: + package_file = os.path.join(work_dir, package_file_name) + deps_file = os.path.join(work_dir, deps_file_name) + + shutil.copytree(package_dir, work_dir, dirs_exist_ok=True) + + replace_in_file(package_file, { + # NB unlike hashes, versions are likely to be used in code or comments. + # Try to be more specific to avoid false positive matches. + f"version = \"{old_version}\"": f"version = \"{new_version}\"", + old_source_hash: new_source_hash, + old_yarn_hash: new_yarn_hash, + }) + + # Generate nuget-to-nix dependency lock file. + fetch_deps = os.path.join(work_dir, "fetch-deps") + subprocess.run( + [ + "nix", + "--extra-experimental-features", "nix-command", + "build", + "--impure", + "--nix-path", "", + "--include", f"nixpkgs={nixpkgs_path}", + "--include", f"package={package_file}", + "--expr", "(import <nixpkgs> { }).callPackage <package> { }", + "--out-link", fetch_deps, + "passthru.fetch-deps", + ], + check=True, + ) + subprocess.run( + [ + fetch_deps, + deps_file, + ], + stdout=subprocess.DEVNULL, + check=True, + ) + + shutil.copy(deps_file, os.path.join(package_dir, deps_file_name)) + shutil.copy(package_file, os.path.join(package_dir, package_file_name)) diff --git a/pkgs/by-name/so/sophus/package.nix b/pkgs/by-name/so/sophus/package.nix index e748e864d0ce0..aa1f6639a4dbe 100644 --- a/pkgs/by-name/so/sophus/package.nix +++ b/pkgs/by-name/so/sophus/package.nix @@ -8,13 +8,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "sophus"; - version = "1.22.10"; + version = "1.24.6"; src = fetchFromGitHub { owner = "strasdat"; repo = "Sophus"; rev = finalAttrs.version; - hash = "sha256-TNuUoL9r1s+kGE4tCOGFGTDv1sLaHJDUKa6c9x41Z7w="; + hash = "sha256-k5t3kSUrH6B1f60dtqq3Ai4R4D2h+Ld+6Cpljl/AN0w="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/so/sozi/package.nix b/pkgs/by-name/so/sozi/package.nix new file mode 100644 index 0000000000000..612aa93cde2df --- /dev/null +++ b/pkgs/by-name/so/sozi/package.nix @@ -0,0 +1,35 @@ +{ appimageTools, lib, fetchurl }: +let + pname = "sozi"; + version = "23.7.25-1690311612"; + + src = fetchurl { + url = "https://github.com/sozi-projects/Sozi/releases/download/v23.07/Sozi-${version}.AppImage"; + hash = "sha256-QHvgevv60ZTkkdt+IWaCuXt0XVnhe5Q5oROwa2LFie8="; + }; + + appimageContents = appimageTools.extract { + inherit version pname src; + }; +in appimageTools.wrapType2 { + inherit pname version src; + + extraPkgs = pkgs: with pkgs; [ polkit udev ]; + + extraInstallCommands = '' + install -m 444 -D ${appimageContents}/sozi.desktop -t $out/share/applications + cp -r ${appimageContents}/usr/share/icons $out/share + substituteInPlace $out/share/applications/sozi.desktop \ + --replace 'Exec=AppRun' 'Exec=sozi' + ''; + + meta = { + description = "Zooming presentation editor and player"; + homepage = "https://sozi.baierouge.fr/"; + license = lib.licenses.mpl20; + mainProgram = "sozi"; + maintainers = with lib.maintainers; [ srghma ]; + platforms = [ "x86_64-linux" ]; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + }; +} |