diff --git a/pkgs/by-name/so/sonarr/deps.nix b/pkgs/by-name/so/sonarr/deps.nix new file mode 100644 index 000000000000..661374123252 --- /dev/null +++ b/pkgs/by-name/so/sonarr/deps.nix @@ -0,0 +1,357 @@ +# 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"; sha256 = "1caf4878nvjid3cw3rw18p9cn53brfs5x8dkvf82xvcdwc3i0nd1"; }) + (fetchNuGet { pname = "coverlet.collector"; version = "3.0.4-preview.27.ge7cb7c3b40"; sha256 = "00r2mi76x4jj30sw1vh0qb9123766g86mxd6f3hgsbczy5mqaa2j"; 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"; sha256 = "1gs17rkrpy64fzdybsfyg76xafcp5i9qdarrg2wrgkraxnhl31cw"; 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"; sha256 = "15hxrchfgiqnmgf8fqhrf4pb4c8l9igg5qnkw9yk3rkagcqfkk91"; }) + (fetchNuGet { pname = "Diacritical.Net"; version = "1.0.4"; sha256 = "1vw1qx5djgcikkb9z5b280fib45s5fgh0mzvqz7i3ggv7kl2a5mc"; }) + (fetchNuGet { pname = "DryIoc.dll"; version = "5.4.3"; sha256 = "1pkkaabw636wnwxar9vr8pg62zjapk3j5f21fvqq9fwh519fqkda"; }) + (fetchNuGet { pname = "DryIoc.Microsoft.DependencyInjection"; version = "6.2.0"; sha256 = "0iygbabd73ggzyq1ckbxifrh1kvzwlkr3x32ahamka7pv3982khb"; }) + (fetchNuGet { pname = "Dynamitey"; version = "2.0.9.136"; sha256 = "1wzd4g58bgvlxj2wkx71jgv6yxaikgm2q9b8cvicr2hndr6wl6y1"; }) + (fetchNuGet { pname = "Equ"; version = "2.3.0"; sha256 = "1b4nhs8xxyddbp7vbih7xf0kn86prwq150bw7ri1gsgaac5r3h9c"; }) + (fetchNuGet { pname = "FluentAssertions"; version = "6.10.0"; sha256 = "0agw9snp59hzsdy8plwj6byiy20xd5l3zx5627yn44m4lh8md17q"; }) + (fetchNuGet { pname = "FluentValidation"; version = "9.5.4"; sha256 = "11g4w8y08k7c8infhhrcd6jp4l4m723m19rgzgknmdy1p0lzrll6"; }) + (fetchNuGet { pname = "GitHubActionsTestLogger"; version = "2.3.3"; sha256 = "12rpibz66bm4img2v1knjhawp4g94qmb78pfbpbhmg60zpnmjg7x"; }) + (fetchNuGet { pname = "Ical.Net"; version = "4.2.0"; sha256 = "19qcbsfmpzm4iclga4zd8qzb37gggq9vs665viyjc8x77nm2zi9r"; }) + (fetchNuGet { pname = "ImpromptuInterface"; version = "7.0.1"; sha256 = "1kyjp5skhsajvmabz438abcvddaz1w8s3d3csybw3znngpj9hlpb"; }) + (fetchNuGet { pname = "Instances"; version = "1.6.1"; sha256 = "1lbb3j7f21yq63xsqbiwlx61blf9f54f8zsp3q50a156gd2kvvl1"; }) + (fetchNuGet { pname = "Lib.Harmony"; version = "2.0.1"; sha256 = "0m9inqv1mx90cr7r57jra2j8qp0yjnvg6032djhiqv03hnhchv4s"; }) + (fetchNuGet { pname = "MailKit"; version = "3.6.0"; sha256 = "1i7fjvi5pp1bi9h4dp82dn7kfp7y6rwc4lwyp1zphyvv3gc54ahh"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Cryptography.Internal"; version = "6.0.21"; sha256 = "1flywd4z2mjllcni6crcp3rm4l1ffhl32likfcgn34d2vicxxjv0"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Cryptography.KeyDerivation"; version = "6.0.21"; sha256 = "0gv8k2dmak4p3n6abcn219d91naw4z4svmd0vrlr8l4pirz1bkm1"; }) + (fetchNuGet { pname = "Microsoft.AspNetCore.Owin"; version = "6.0.21"; sha256 = "15bji9cx9hda8vncvabahgr5037qriyi3bb72m7vj79sad6nbshp"; }) + (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "6.0.0"; sha256 = "15gqy2m14fdlvy1g59207h5kisznm355kbw010gy19vh47z8gpz3"; }) + (fetchNuGet { pname = "Microsoft.Bcl.TimeProvider"; version = "8.0.0"; sha256 = "11bzf84kg54g5vq5w4zshdfl9a1agkph6gmg9lrq68fjf14w66vw"; }) + (fetchNuGet { pname = "Microsoft.Build.Tasks.Git"; version = "1.1.1"; sha256 = "1bb5p4zlnfn88skkvymxfsn0jybqncl4356hwnic9jxdq2d4fz1w"; }) + (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.5.0"; sha256 = "0briw00gb5bz9k9kx00p6ghq47w501db7gb6ig5zzmz9hb8lw4a4"; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.4.1"; sha256 = "0z6d1i6xcf0c00z6rs75rgw4ncs9q2m8amasf6mmbf40fm02ry7g"; }) + (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.5.0"; sha256 = "01i28nvzccxbqmiz217fxs6hnjwmd5fafs37rd49a6qp53y6623l"; }) + (fetchNuGet { pname = "Microsoft.Data.SqlClient"; version = "2.1.2"; sha256 = "1l9qvvqdg1jmqg525k0cgfw08j9jyvb9ibh3x1wl1zidkwg1xgbz"; }) + (fetchNuGet { pname = "Microsoft.Data.SqlClient.SNI.runtime"; version = "2.1.1"; sha256 = "0c04sjbhm5lyn2b4faz8zlc338i4lavv1638yz64nw6xxrp2b0zr"; }) + (fetchNuGet { pname = "Microsoft.DotNet.InternalAbstractions"; version = "1.0.0"; sha256 = "0mp8ihqlb7fsa789frjzidrfjc1lrhk88qp3xm5qvr7vf4wy4z8x"; }) + (fetchNuGet { pname = "Microsoft.DotNet.PlatformAbstractions"; version = "2.1.0"; sha256 = "1qydvyyinj3b5mraazjal3n2k7jqhn05b6n1a2f3qjkqkxi63dmy"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "6.0.0"; sha256 = "1zdyai2rzngmsp3706d12qrdk315c1s3ja218fzb3nc3wd1vz0s8"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "6.0.1"; sha256 = "0wg6ilgm0vkhgh8jkvpna7kqiix47zpcgzdvh6c237bi8h0lz7mz"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "2.0.1"; sha256 = "164i6xmkpl419akn17ag4hng8jq866g39wyxns4wv5glahwb6xai"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "5.0.0"; sha256 = "0fqxkc9pjxkqylsdf26s9q21ciyk56h1w33pz3v1v4wcv8yv1v6k"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "6.0.0"; sha256 = "0w6wwxv12nbc3sghvr68847wc9skkdgsicrz3fx4chgng1i3xy0j"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "6.0.0"; sha256 = "15hb2rbzgri1fq8wpj4ll7czm3rxqzszs02phnhjnncp90m5rmpc"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.CommandLine"; version = "6.0.0"; sha256 = "1hb4qrq9xdxzh2px515pv1vkz1jigwaxw1hfg9w8s6pgl8z04l4c"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "6.0.1"; sha256 = "16xpqfzpcjk3mg70g5g2qrkhqf7rppah3q6dasdddbpikw43ni47"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "6.0.0"; sha256 = "02nna984iwnyyz4jjh9vs405nlj0yk1g5vz4v2x30z2c89mx5f9w"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "6.0.0"; sha256 = "1c6l5szma1pdn61ncq1kaqibg0dz65hbma2xl626a8d1m6awn353"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Configuration.UserSecrets"; version = "6.0.1"; sha256 = "0faddzvkhjhsn9fp269r4sapjrahiynwlwakhzljfg3k94jfldk1"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "2.2.0"; sha256 = "0lvv45rvq1xbf47lz818rjydc776zk8mf7svpzh1dml4qwlx9zck"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "5.0.0"; sha256 = "15sdwcyzz0qlybwbdq854bn3jk6kx7awx28gs864c4shhbqkppj4"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.0"; sha256 = "1wlhb2vygzfdjbdzy7waxblmrx0q3pdcqvpapnpmq9fcx5m8r6w1"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.1"; sha256 = "0kl5ypidmzllyxb91gwy3z950dc416p1y8wikzbdbp0l7aaaxq2p"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.0.0"; sha256 = "1pwrfh9b72k9rq6mb2jab5qhhi225d5rjalzkapiayggmygc8nhz"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.2.0"; sha256 = "1jyzfdr9651h3x6pxwhpfbb9mysfh8f8z1jvy4g117h9790r9zx5"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "5.0.0"; sha256 = "17cz6s80va0ch0a6nqa1wbbbp3p8sqxb96lj4qcw67ivkp2yxiyj"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "6.0.0"; sha256 = "1vi67fw7q99gj7jd64gnnfr4d2c0ijpva7g9prps48ja6g91x6a9"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "7.0.0"; sha256 = "181d7mp9307fs17lyy42f8cxnjwysddmpsalky4m0pqxcimnr6g7"; }) + (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "2.1.0"; sha256 = "0dl4qhjgifm6v3jsfzvzkvddyic77ggp9fq49ah661v45gk6ilgd"; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "6.0.0"; sha256 = "1fbqmfapxdz77drcv1ndyj2ybvd2rv4c9i9pgiykcpl4fa6dc65q"; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "6.0.0"; sha256 = "1ikc3kf325xig6njbi2aj5kmww4xlaq9lsrpc8v764fsm4x10474"; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "2.0.1"; sha256 = "0p1xb5vcsbmxdi538736avj7kkafsvjsl98mz5sgs7a048pmq5s0"; }) + (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "6.0.0"; sha256 = "09gyyv4fwy9ys84z3aq4lm9y09b7bd1d4l4gfdinmg0z9678f1a4"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting"; version = "6.0.1"; sha256 = "11jwzzyryr6i2nwfcrs4rjv4qg0zmm15gaa882xk54ric3zc37ig"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "6.0.0"; sha256 = "1mwjx6li4a82nb589763whpnhf5hfy1bpv1dzqqvczb1lhxhzhlj"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Hosting.WindowsServices"; version = "6.0.2"; sha256 = "0613a766fxr4pzy8a8p731d0ibz7p8m4hxil2cmzl6g755vg40l6"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "5.0.0"; sha256 = "1qa1l18q2jh9azya8gv1p8anzcdirjzd9dxxisb4911i9m1648i3"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "6.0.0"; sha256 = "0fd9jii3y3irfcwlsiww1y9npjgabzarh33rn566wpcz24lijszi"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "2.0.1"; sha256 = "1l6jhhdxnvvy9bszmkv2q58qsms78d5k7zbkq1lj7djncly71wr7"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "5.0.0"; sha256 = "1yza38675dbv1qqnnhqm23alv2bbaqxp0pb7zinjmw8j2mr5r6wc"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "6.0.0"; sha256 = "0b75fmins171zi6bfdcq1kcvyrirs8n91mknjnxy4c3ygi1rrnj0"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Configuration"; version = "6.0.0"; sha256 = "0plx785hk61arjxf0m3ywy9hl5nii25raj4523n3ql7mmv6hxqr1"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Console"; version = "6.0.0"; sha256 = "1383b0r33dzz0hrch9cqzzxr9vxr21qq0a5vnrpkfq71m2fky31d"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.Debug"; version = "6.0.0"; sha256 = "0aql9kc45g2d6z1hmwr3p1a2qy9m3f36bds3054givsnpnis81wk"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventLog"; version = "6.0.0"; sha256 = "0j3g2k8sr99kr73w66yk4ghq469syyxzayq6fjfnjjgj1y7x05fl"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventSource"; version = "6.0.0"; sha256 = "0ck8r63qal88349kkbj1i98fd8z9kcp41s13yyz8cpkygn15wq4g"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "2.0.1"; sha256 = "1xndfwz6wgqpkjkfkbxgnmg7b691ihyx9x95mkp0sjg5hpfvxdw5"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "5.0.0"; sha256 = "1rdmgpg770x8qwaaa6ryc27zh93p697fcyvn5vkxp0wimlhqkbay"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "6.0.0"; sha256 = "008pnk2p50i594ahz308v81a41mbjz9mwcarqhmrjpl2d20c868g"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "6.0.0"; sha256 = "1k6q91vrhq1r74l4skibn7wzxzww9l74ibxb2i8gg4q6fzbiivba"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "2.0.0"; sha256 = "1xppr5jbny04slyjgngxjdm0maxdh47vq481ps944d7jrfs0p3mb"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; }) + (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; sha256 = "1kjiw6s4yfz9gm7mx3wkhp06ghnbs95icj9hi505shz9rjrg42q2"; }) + (fetchNuGet { pname = "Microsoft.Identity.Client"; version = "4.21.1"; sha256 = "11czikqfn0sx2a1algv2v233h0ndjs8rncfm306qm376w917brs3"; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "6.8.0"; sha256 = "12df8mliwc33gj671a61ivd74hdrlmaffs841bblk4pmgfrscq72"; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "6.8.0"; sha256 = "16jcnkm9mn3pv8mn2wv4vvndarhfhrkx4n395n3kvp03638wyy63"; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Protocols"; version = "6.8.0"; sha256 = "0z417z28b9raxy8hi0b3l9js5lqrzcxwxcjlwimbichsi0jilcd3"; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Protocols.OpenIdConnect"; version = "6.8.0"; sha256 = "1gm4df8rb7ppzhydgbz1ib423s9pwi00dh3gxfmp0myz224nflsa"; }) + (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "6.8.0"; sha256 = "0mn8j3sqmfa5ksyydnpypwdbbr7dvyahwiyqkp85mbbhcayhi6rl"; }) + (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.5.0"; sha256 = "00gz2i8kx4mlq1ywj3imvf7wc6qzh0bsnynhw06z0mgyha1a21jy"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "3.1.0"; sha256 = "1gc1x8f95wk8yhgznkwsg80adk1lc65v9n5rx4yaa4bc5dva0z3j"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; }) + (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; }) + (fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.2.3"; sha256 = "07b19k89whj69j87afkz86gp9b3iybw8jqwvlgcn43m7fb2y99rr"; }) + (fetchNuGet { pname = "Microsoft.SourceLink.Common"; version = "1.1.1"; sha256 = "0xkdqs7az2cprar7jzjlgjpd64l6f8ixcmwmpkdm03fyb4s5m0bg"; }) + (fetchNuGet { pname = "Microsoft.SourceLink.GitHub"; version = "1.1.1"; sha256 = "099y35f2npvva3jk1zp8hn0vb9pwm2l0ivjasdly6y2idv53s5yy"; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "16.9.1"; sha256 = "1igpx7ldxqx9fkrbhakd2bybc0dgpvj86zr30vpfj31ncm6lp4id"; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.5.0"; sha256 = "0qkjyf3ky6xpjg5is2sdsawm99ka7fzgid2bvpglwmmawqgm8gls"; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.7.1"; sha256 = "0agmphcspyg4pmpzfrfpbmgqf3wd3kqqvs87xls0i1139pa8ryi9"; }) + (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.5.0"; sha256 = "17g0k3r5n8grba8kg4nghjyhnq9w8v0w6c2nkyyygvfh8k8x9wh3"; }) + (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; }) + (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.3.0"; sha256 = "1gxyzxam8163vk1kb6xzxjj4iwspjsz9zhgn1w9rjzciphaz0ig7"; }) + (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.7.0"; sha256 = "0bx21jjbs7l5ydyw4p6cn07chryxpmchq2nl5pirzz4l3b0q4dgs"; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "4.7.0"; sha256 = "0pjll2a62hc576hd4wgyasva0lp733yllmk54n37svz5ac7nfz0q"; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; sha256 = "0sja4ba0mrvdamn0r9mhq38b9dxi08yb3c1hzh29n1z6ws1hlrcq"; }) + (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; sha256 = "0c6pcj088g1yd1vs529q3ybgsd2vjlk5y1ic6dkmbhvrp5jibl9p"; }) + (fetchNuGet { pname = "MimeKit"; version = "3.6.0"; sha256 = "0l54df3s0qnj0b06a4z5mldlx4nnfvw8sbfl57ddalz505q3mayg"; }) + (fetchNuGet { pname = "Mono.Cecil"; version = "0.11.1"; sha256 = "0c7srz0vqm0npli2ixg9j6x934l0drrng8brwanqh96s1wwaikr7"; }) + (fetchNuGet { pname = "Mono.Cecil"; version = "0.11.2"; sha256 = "114idyjaa6npi580d61gvr7i5xfcy5xi2yc1pfr9y82pj5kj7x5a"; }) + (fetchNuGet { pname = "Mono.Nat"; version = "3.0.1"; sha256 = "1xy3c9wsiz8k3rx8v60y6gnps337rsb5jpyj0r6g384prg6z4vh0"; }) + (fetchNuGet { pname = "Mono.Posix.NETStandard"; version = "5.20.1.34-servarr24"; sha256 = "1dng80xi6qp62zp4p23cigkbykvhkk8g8k2qgzl5ky9kk6hdvb3a"; 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"; sha256 = "1aa61i75n1435az43jzh80ra8mqna4yqq3byjzyaadg8dvcwq1rg"; }) + (fetchNuGet { pname = "MonoTorrent"; version = "2.0.7"; sha256 = "030nh2fvj78fmllbv08f2bzdwfb2nhgbjn5x5hggd7ibg8mmx8ax"; }) + (fetchNuGet { pname = "Moq"; version = "4.18.4"; sha256 = "0x439pcaqg8kv0an4cjbspw8d98gq144yrqwhnnh6xf9qjaris94"; }) + (fetchNuGet { pname = "NBuilder"; version = "6.1.0"; sha256 = "17qi59fnfk3qpwyc14z2jaigvjl0rjy592927wv3nlh8wq7aajyw"; }) + (fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; }) + (fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy"; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; sha256 = "0fijg0w6iwap8gvzyjnndds0q4b8anwxxvik7y8vgq97dram4srb"; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7"; }) + (fetchNuGet { pname = "Newtonsoft.Json"; version = "9.0.1"; sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; }) + (fetchNuGet { pname = "NLog"; version = "4.7.11"; sha256 = "0vvgypqh6cxzkrfymjaghads5dg88l2xvbz6dxwwrnjg5hhpcjaw"; }) + (fetchNuGet { pname = "NLog"; version = "4.7.14"; sha256 = "1pjkxlf20vrh9b8r6wzay1563fdhhxslxb7acdkn5ss8gvd2m23n"; }) + (fetchNuGet { pname = "NLog.Extensions.Logging"; version = "1.7.4"; sha256 = "1lilk9sv3j9jg23hl0vhxd8w63bh6xvns42rkz5n582wpf5k2r24"; }) + (fetchNuGet { pname = "NLog.Targets.Syslog"; version = "6.0.3"; sha256 = "17d1chixs9f3g1gwg74k1ms9y7v7c396jdvycsj54d6a7hkwr5fx"; }) + (fetchNuGet { pname = "NodaTime"; version = "3.0.0"; sha256 = "1rk6jxpy7rngznmci02hi346wr7ibr262m8jn0bf5rdk6y8qds4h"; }) + (fetchNuGet { pname = "Npgsql"; version = "7.0.7"; sha256 = "1rsss91i3q0irafps64bqdhg741cayw4i1r3j3sblgwhxl8czw82"; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.0.0"; sha256 = "18ijvmj13cwjdrrm52c8fpq021531zaz4mj4b4zapxaqzzxf2qjr"; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; sha256 = "0wv26gq39hfqw9md32amr5771s73f5zn1z9vs4y77cgynxr73s4z"; }) + (fetchNuGet { pname = "NuGet.Frameworks"; version = "6.5.0"; sha256 = "0s37d1p4md0k6d4cy6sq36f2dgkd9qfbzapxhkvi8awwh0vrynhj"; }) + (fetchNuGet { pname = "NUnit"; version = "3.13.3"; sha256 = "0wdzfkygqnr73s6lpxg5b1pwaqz9f414fxpvpdmf72bvh4jaqzv6"; }) + (fetchNuGet { pname = "NUnit3TestAdapter"; version = "3.17.0"; sha256 = "0kxc6z3b8ccdrcyqz88jm5yh5ch9nbg303v67q8sp5hhs8rl8nk6"; }) + (fetchNuGet { pname = "NunitXml.TestLogger"; version = "3.0.131"; sha256 = "0a1b9v3rl0jxdm0clma5xv73w9kwv33asix6041dv6x7xzyqi2p4"; }) + (fetchNuGet { pname = "Polly"; version = "8.3.1"; sha256 = "19q7s493sv90879052pxfcbsk3bmxjg5688ya7l12964ddafiwsl"; }) + (fetchNuGet { pname = "Polly.Core"; version = "8.3.1"; sha256 = "15ylkqdcwpr76n0nfzpvd6s00ywjagn1ignyrcz9arwahrxpsm4b"; }) + (fetchNuGet { pname = "Portable.BouncyCastle"; version = "1.9.0"; sha256 = "0kphjwz4hk2nki3b4f9z096xzd520nrpvi3cjib8fkjk6zhwrr8q"; }) + (fetchNuGet { pname = "RestSharp"; version = "106.15.0"; sha256 = "1g2gbzaldyriy46rgf5yvnd5b8q7y0blhcwals80j0gv3igs2h7i"; }) + (fetchNuGet { pname = "ReusableTasks"; version = "2.0.0"; sha256 = "0qag69n8kx164minz3h50g6f7cdq15r89vikcd1llbkdwq4qldaa"; }) + (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; }) + (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; }) + (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; }) + (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; }) + (fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1ghhhk5psqxcg6w88sxkqrc35bxcz27zbqm2y5p5298pv3v7g201"; }) + (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; }) + (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; }) + (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; }) + (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; }) + (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; }) + (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; }) + (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; }) + (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; }) + (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; }) + (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; }) + (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; }) + (fetchNuGet { pname = "runtime.any.System.Threading.Timer"; version = "4.3.0"; sha256 = "0aw4phrhwqz9m61r79vyfl5la64bjxj8l34qnrcwb28v49fg2086"; }) + (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; }) + (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; }) + (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; }) + (fetchNuGet { pname = "runtime.native.System"; version = "4.0.0"; sha256 = "1ppk69xk59ggacj9n7g6fyxvzmk1g5p4fkijm0d7xqfkig98qrkf"; }) + (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; }) + (fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d"; }) + (fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk"; }) + (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q"; }) + (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; }) + (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; }) + (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; }) + (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi"; }) + (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; }) + (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; }) + (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; }) + (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; }) + (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; }) + (fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0y61k9zbxhdi0glg154v30kkq7f8646nif8lnnxbvkjpakggd5id"; }) + (fetchNuGet { pname = "runtime.unix.System.Console"; version = "4.3.0"; sha256 = "1pfpkvc6x2if8zbdzg9rnc5fx51yllprl8zkm5npni2k50lisy80"; }) + (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; }) + (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; }) + (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; }) + (fetchNuGet { pname = "runtime.unix.System.Net.Sockets"; version = "4.3.0"; sha256 = "03npdxzy8gfv035bv1b9rz7c7hv0rxl5904wjz51if491mw0xy12"; }) + (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; }) + (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; }) + (fetchNuGet { pname = "Sentry"; version = "4.0.2"; sha256 = "118k34q5zrzz2k150nq10mp6iplxpvfsyzi9f6fn81ra0v200fsg"; }) + (fetchNuGet { pname = "Servarr.FFMpegCore"; version = "4.7.0-26"; sha256 = "11hlvzd78rq2by05ywbmf5xgcc1f0y53y3aq46hipcvqnaqy0v50"; 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"; sha256 = "07cy85gi8n3axpfrj1zgyf037p9yxcll0jd1d8bks6ibjyywilrr"; 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"; sha256 = "1lyb4d13c3azj1xgr4cdp2pmwxkzpr9qh9qzc0lf0v5iddpir4dw"; 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"; sha256 = "1606h83gdgv2rg32xjzd3nsi037dwdqqc3n0lrn4q3nxlrlcx2lm"; 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"; sha256 = "14wvmsg881mgigazszyas9sshr8119m40a0gd1bddbq9iwbz5wfj"; 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"; sha256 = "0vqd1jxxn66ydbkrwq9qkykf28i8z74a0ixr03mwzcrgg1h2wh0g"; 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"; sha256 = "1mz7j4wara40l1hhmflja2z62nd5i8qcpaxc7xkxaw7wdbd3qslb"; 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"; sha256 = "04s1wd89zn8k0s7m256sgnzw32lvin6iylba545hjysrkqfl438z"; 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"; sha256 = "020mv58591cv172dc3sw0r555xf42nwsrra92irvlk796vpxm34j"; 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"; sha256 = "19y34dw0qs5y1hp0w5yq5z85wv6ibw8gyim6ghvzg7vbw8hhgg60"; 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"; sha256 = "1ikb0anvh6i88x48k9mscp362crj873v5fxd174zs7rqyw6fs8kj"; 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"; sha256 = "07dvw3y5n39fxrpfqkdn30gncxh8x2j6jvw1vnijay9cxmhn7cxc"; 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"; sha256 = "10fi2xq1izxqd3mhcg42ahyxl8i0iyhl6hi3zcbnr88x9kdafagc"; 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"; sha256 = "1nggyp6acsz7931gy7iq2pa0z56g9m2rv9ang4969ajr47whd3ii"; 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"; sha256 = "0y17z0bv5gcaw19cirgfhf8lj90h748bpc5cniq8hqc62spbyv70"; 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"; sha256 = "17j7c2cas53b1x5wi6rvn6yli347qfbp1m9l2jrxrb8dj58n79ii"; 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"; sha256 = "1w6055ifmbay1d0dmnkk3nsszn7ihkx8gskrxlh0ysgcrz6qcwlf"; 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"; sha256 = "1fzfkaa9cbhjy9lrb78h7yakka4j1gfi6hn7kxrlidkw382yv7d9"; 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"; sha256 = "1903cc4z31b0pcs64zagk7hn6dkgmfyj2di7bdf0i4zl2h365x3m"; 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"; sha256 = "1zwmhwniwh46h9r9jr1vjpmh8k94xldg4fgzdlaa22pr7m8iyclq"; 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"; sha256 = "07j9nmhyb946mdlpp9i159f4c7mq9w1ar5p8dvskzkzmp26dj7ck"; 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"; sha256 = "0ijrzz2szxjmv2cipk7rpmg14dfaigdkg7xabjvb38ih56m9a27y"; }) + (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.1.4"; sha256 = "0cs6wfx74rwp88m5arci04ldv2s92kpif28ykfm9ig17h9a8gsnc"; }) + (fetchNuGet { pname = "Swashbuckle.AspNetCore.Swagger"; version = "6.5.0"; sha256 = "1s6axf6fin8sss3bvzp0s039rxrx71vx4rl559miw12bz3lld8kc"; }) + (fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerGen"; version = "6.5.0"; sha256 = "0hq93gy5vyrigpdk9lhqwxglxwkbxa8ydllwcqs4bwfcsspzrs83"; }) + (fetchNuGet { pname = "System.AppContext"; version = "4.1.0"; sha256 = "0fv3cma1jp4vgj7a8hqc9n7hr1f1kjp541s6z0q1r6nazb4iz9mz"; }) + (fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; }) + (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; }) + (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; }) + (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; }) + (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; }) + (fetchNuGet { pname = "System.Collections.NonGeneric"; version = "4.3.0"; sha256 = "07q3k0hf3mrcjzwj8fwk6gv3n51cb513w4mgkfxzm3i37sc9kz7k"; }) + (fetchNuGet { pname = "System.Collections.Specialized"; version = "4.3.0"; sha256 = "1sdwkma4f6j85m3dpb53v9vcgd0zyc9jb33f8g63byvijcj39n20"; }) + (fetchNuGet { pname = "System.ComponentModel"; version = "4.3.0"; sha256 = "0986b10ww3nshy30x9sjyzm0jx339dkjxjj3401r3q0f6fx2wkcb"; }) + (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.4.1"; sha256 = "1d46yx6h36bssqyshq44qxx0fsx43bjf09zrlbvqfigacfsp9mph"; }) + (fetchNuGet { pname = "System.ComponentModel.EventBasedAsync"; version = "4.3.0"; sha256 = "1rv9bkb8yyhqqqrx6x95njv6mdxlbvv527b44mrd93g8fmgkifl7"; }) + (fetchNuGet { pname = "System.ComponentModel.Primitives"; version = "4.3.0"; sha256 = "1svfmcmgs0w0z9xdw2f2ps05rdxmkxxhf0l17xk9l1l8xfahkqr0"; }) + (fetchNuGet { pname = "System.ComponentModel.TypeConverter"; version = "4.3.0"; sha256 = "17ng0p7v3nbrg3kycz10aqrrlw4lz9hzhws09pfh8gkwicyy481x"; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "4.4.0"; sha256 = "1hjgmz47v5229cbzd2pwz2h0dkq78lb2wp9grx8qr72pb5i0dk7v"; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "4.7.0"; sha256 = "0pav0n21ghf2ax6fiwjbng29f27wkb4a2ddma0cqx04s97yyk25d"; }) + (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "6.0.1"; sha256 = "1d6cx49fzycbl2fam8d1j3491sqx6mh7qkb5ddrawr00x74hgzak"; }) + (fetchNuGet { pname = "System.Console"; version = "4.3.0"; sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay"; }) + (fetchNuGet { pname = "System.Data.SQLite.Core.Servarr"; version = "1.0.115.5-18"; sha256 = "0dx5n2rp2bbn9c0044skybsv6njybr2h3mh03zqa6nx4s8l2z90z"; 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"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; }) + (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.7.0"; sha256 = "0cr0v5dz8l5ackxv6b772fjcyj2nimqmrmzanjs4cw2668v568n1"; }) + (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "6.0.0"; sha256 = "0rrihs9lnb1h6x4h0hn6kgfnh58qq7hx8qq99gh6fayx4dcnx3s5"; }) + (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "6.0.0"; sha256 = "08y1x2d5w2hnhkh9r1998pjc7r4qp0rmzax062abha85s11chifd"; }) + (fetchNuGet { pname = "System.Diagnostics.Process"; version = "4.3.0"; sha256 = "0g4prsbkygq8m21naqmcp70f24a1ksyix3dihb1r1f71lpi3cfj7"; }) + (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; }) + (fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; }) + (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "4.7.0"; sha256 = "0yfw7cpl54mgfcylvlpvrl0c8r1b0zca6p7r3rcwkvqy23xqcyhg"; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "5.0.2"; sha256 = "08kgiywg5whhw80xshlrp0q9mkl8hlkgqdsnk1gm6bb898f1l3gs"; }) + (fetchNuGet { pname = "System.Drawing.Common"; version = "6.0.0"; sha256 = "02n8rzm58dac2np8b3xw8ychbvylja4nh6938l5k2fhyn40imlgz"; }) + (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; }) + (fetchNuGet { pname = "System.Formats.Asn1"; version = "6.0.0"; sha256 = "1vvr7hs4qzjqb37r0w1mxq7xql2b17la63jwvmgv65s1hj00g8r9"; }) + (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; }) + (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; }) + (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; }) + (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; }) + (fetchNuGet { pname = "System.IdentityModel.Tokens.Jwt"; version = "6.8.0"; sha256 = "1j0cfyg5718rfp6i8c4qmmr8lcx6p4dq1byicnlvmlnr4kx8ks2m"; }) + (fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; }) + (fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; }) + (fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; }) + (fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; }) + (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1"; sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1"; }) + (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; }) + (fetchNuGet { pname = "System.IO.FileSystem.AccessControl"; version = "6.0.0-preview.5.21301.5"; sha256 = "0clg39zqzdp45r8pp9shlgvnpvsskf608vdz5qjn8k4fbm69cyx0"; }) + (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1"; sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612"; }) + (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; }) + (fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; }) + (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; }) + (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; }) + (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; }) + (fetchNuGet { pname = "System.Memory"; version = "4.5.5"; sha256 = "08jsfwimcarfzrhlyvjjid61j02irx6xsklf32rv57x2aaikvx0h"; }) + (fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; }) + (fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; sha256 = "15r75pwc0rm3vvwsn8rvm2krf929mjfwliv0mpicjnii24470rkq"; }) + (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; }) + (fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla"; }) + (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; }) + (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; }) + (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; }) + (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; }) + (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; }) + (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; }) + (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; }) + (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.7.0"; sha256 = "0l8jpxhpgjlf1nkz5lvp61r4kfdbhr29qi8aapcxn3izd9wd0j8r"; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c"; }) + (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.7.0"; sha256 = "0mbjfajmafkca47zr8v36brvknzks5a7pgb49kfq2d188pyv6iap"; }) + (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; }) + (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq"; }) + (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.5.0"; sha256 = "1bqqs9w424cw6an5n0rvd1d9522d50z550fn75g2lysl480gkkn0"; }) + (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4"; }) + (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; }) + (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.1.0"; sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7"; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; }) + (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.7.0"; sha256 = "04qw9km34pmzr2alckb3mqdb4fpqwlvzk59lg8c7jfidghcl4jqq"; }) + (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; }) + (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; }) + (fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; }) + (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; }) + (fetchNuGet { pname = "System.Runtime.Caching"; version = "4.7.0"; sha256 = "1bxv0jfxm50z4303znp790bijm7pg6nli0l8fin83scfhkc34h7y"; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.4.0"; sha256 = "0a6ahgi5b148sl5qyfpyw383p3cb4yrkm802k29fsi4mxkiwir29"; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.7.1"; sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j"; }) + (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; sha256 = "0qm741kh4rh57wky16sq4m0v05fxmkjjr87krycf5vp9f0zbahbc"; }) + (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; }) + (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; }) + (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; }) + (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; }) + (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; }) + (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; }) + (fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.0.0"; sha256 = "0glmvarf3jz5xh22iy3w9v3wyragcm4hfdr17v90vs7vcrm7fgp6"; }) + (fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.3.0"; sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii"; }) + (fetchNuGet { pname = "System.Runtime.Loader"; version = "4.3.0"; sha256 = "07fgipa93g1xxgf7193a6vw677mpzgr0z0cfswbvqqb364cva8dk"; }) + (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; }) + (fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.7.0"; sha256 = "0n0k0w44flkd8j0xw7g3g3vhw7dijfm51f75xkm1qxnbh4y45mpz"; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0"; sha256 = "0a678bzj8yxxiffyzy60z2w1nczzpi8v97igr4ip3byd2q89dv58"; }) + (fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0-preview.5.21301.5"; sha256 = "131f3z3ikv3n8442chr11nj4x46amq00mb53pb2ds42dabldkdgy"; }) + (fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.5.0"; sha256 = "1pm4ykbcz48f1hdmwpia432ha6qbb9kbrxrrp7cg3m8q8xn52ngn"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; }) + (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Pkcs"; version = "6.0.0"; sha256 = "1q80znpwkv5wrzgx0qnzxqaa5k1s72fnk3g1yng62l7y14d8ki64"; }) + (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.4.0"; sha256 = "1q8ljvqhasyynp94a1d7jknk946m20lkwy2c3wa8zw2pc517fbj6"; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "4.7.0"; sha256 = "1s1sh8k10s0apa09c5m2lkavi3ys90y657whg2smb3y8mpkfr5vm"; }) + (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "6.0.0"; sha256 = "05kd3a8w7658hjxq9vvszxip30a479fjmfq4bq1r95nrsvs4hbss"; }) + (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; }) + (fetchNuGet { pname = "System.Security.Permissions"; version = "4.7.0"; sha256 = "13f366sj36jwbvld957gk2q64k2xbj48r8b0k9avrri2nlq1fs04"; }) + (fetchNuGet { pname = "System.Security.Permissions"; version = "6.0.0"; sha256 = "0jsl4xdrkqi11iwmisi1r2f2qn5pbvl79mzq877gndw6ans2zhzw"; }) + (fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf"; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; sha256 = "00a0a7c40i3v4cb20s2cmh9csb5jv2l0frvnlzyfxh848xalpdwr"; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.7.0"; sha256 = "1a56ls5a9sr3ya0nr086sdpa9qv0abv31dd6fp27maqa9zclqq5d"; }) + (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "6.0.0-preview.5.21301.5"; sha256 = "1q3iikvjcfrm5p89p1j7qlw1szvryq680qypk023wgy9phmlwi57"; }) + (fetchNuGet { pname = "System.ServiceProcess.ServiceController"; version = "6.0.1"; sha256 = "15nvnflqfrz2fsclcwgaq8r532x2fbv1ds3rck95l8psb7pgx1v5"; }) + (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; }) + (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; }) + (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.7.0"; sha256 = "00yamg3b111blkjvyckxl5nxsxs2n9iccp7z1x0c2j96czgf60pz"; }) + (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "6.0.0"; sha256 = "0gm2kiz2ndm9xyzxgi0jhazgwslcs427waxgfa30m7yqll1kcrww"; }) + (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; }) + (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; }) + (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "6.0.0"; sha256 = "06n9ql3fmhpjl32g3492sj181zjml5dlcc5l76xq2h38c4f87sai"; }) + (fetchNuGet { pname = "System.Text.Json"; version = "6.0.0"; sha256 = "1si2my1g0q0qv1hiqnji4xh9wd05qavxnzj9dwgs23iqvgjky0gl"; }) + (fetchNuGet { pname = "System.Text.Json"; version = "6.0.9"; sha256 = "1fvqlicbn774da3b1zyfbnd7lw350sxq8hr7jcincv1fbz2yyf76"; }) + (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; }) + (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; }) + (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; }) + (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; }) + (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; }) + (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; }) + (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; }) + (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; }) + (fetchNuGet { pname = "System.Threading.Thread"; version = "4.3.0"; sha256 = "0y2xiwdfcph7znm2ysxanrhbqqss6a3shi1z3c779pj2s523mjx4"; }) + (fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1"; }) + (fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56"; }) + (fetchNuGet { pname = "System.ValueTuple"; version = "4.4.0"; sha256 = "1wydfgszs00yxga57sam66vzv9fshk2pw7gim57saplsnkfliaif"; }) + (fetchNuGet { pname = "System.ValueTuple"; version = "4.5.0"; sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy"; }) + (fetchNuGet { pname = "System.Windows.Extensions"; version = "4.7.0"; sha256 = "11dmyx3j0jafjx5r9mkj1v4w2a4rzrdn8fgwm2d1g7fs1ayqcvy9"; }) + (fetchNuGet { pname = "System.Windows.Extensions"; version = "6.0.0"; sha256 = "1wy9pq9vn1bqg5qnv53iqrbx04yzdmjw4x5yyi09y3459vaa1sip"; }) + (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; }) + (fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; }) + (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11"; sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18"; }) + (fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; }) + (fetchNuGet { pname = "System.Xml.XmlDocument"; version = "4.3.0"; sha256 = "0bmz1l06dihx52jxjr22dyv5mxv6pj4852lx68grjm7bivhrbfwi"; }) + (fetchNuGet { pname = "System.Xml.XPath"; version = "4.3.0"; sha256 = "1cv2m0p70774a0sd1zxc8fm8jk3i5zk2bla3riqvi8gsm0r4kpci"; }) + (fetchNuGet { pname = "System.Xml.XPath.XmlDocument"; version = "4.3.0"; sha256 = "1h9lh7qkp0lff33z847sdfjj8yaz98ylbnkbxlnsbflhj9xyfqrm"; }) +] 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 000000000000..c844b419d7a5 --- /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 000000000000..d6a72b492642 --- /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.5.1710"; + src = fetchFromGitHub { + owner = "Sonarr"; + repo = "Sonarr"; + rev = "v${version}"; + hash = "sha256-9mrt5/6v8odPv1rwJoT6laXGlh3blgZAL97tsllj7MY="; + }; +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 000000000000..195a2d5d05ac --- /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 { }).callPackage { }", + "--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/servers/sonarr/default.nix b/pkgs/servers/sonarr/default.nix deleted file mode 100644 index b2ea1080c30b..000000000000 --- a/pkgs/servers/sonarr/default.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ lib, stdenv, fetchurl, dotnet-runtime, icu, ffmpeg, openssl, sqlite, curl, makeWrapper, nixosTests, zlib }: - -let - os = if stdenv.isDarwin then "osx" else "linux"; - arch = { - x86_64-linux = "x64"; - aarch64-linux = "arm64"; - x86_64-darwin = "x64"; - aarch64-darwin = "arm64"; - }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); - - hash = { - x64-linux_hash = "sha256-MkRKWMhH4x5Z9mURh8qpShaozHrBFOHHwTmFlU1wqS8="; - arm64-linux_hash = "sha256-OIwWZEW4qmL5359hmGdNzunxVTIT3hIbTdAsd5Cpw/k="; - x64-osx_hash = "sha256-uDQXfj4r56ewrhZdwOnF78L3M1o0jDLt/PZlfWxxV18="; - arm64-osx_hash = "sha256-6WUeMIfF5juNHrLqep3mONqfcgxlBJOOJmHJkyHpZhU="; - }."${arch}-${os}_hash"; -in -stdenv.mkDerivation rec { - pname = "sonarr"; - version = "4.0.5.1710"; - - src = fetchurl { - url = "https://github.com/Sonarr/Sonarr/releases/download/v${version}/Sonarr.main.${version}.${os}-${arch}.tar.gz"; - inherit hash; - }; - - nativeBuildInputs = [ makeWrapper ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out/{bin,share/sonarr-${version}} - cp -r * $out/share/sonarr-${version}/. - - makeWrapper "${dotnet-runtime}/bin/dotnet" $out/bin/NzbDrone \ - --add-flags "$out/share/sonarr-${version}/Sonarr.dll" \ - --prefix PATH : ${lib.makeBinPath [ ffmpeg ]} \ - --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ curl sqlite openssl icu zlib ]} - - runHook postInstall - ''; - - passthru = { - updateScript = ./update.sh; - tests.smoke-test = nixosTests.sonarr; - }; - - meta = { - description = "Smart PVR for newsgroup and bittorrent users"; - homepage = "https://sonarr.tv/"; - license = lib.licenses.gpl3Only; - maintainers = with lib.maintainers; [ fadenb purcell ]; - mainProgram = "NzbDrone"; - platforms = lib.platforms.all; - }; -} diff --git a/pkgs/servers/sonarr/update.sh b/pkgs/servers/sonarr/update.sh deleted file mode 100755 index 8ccbc5ba9919..000000000000 --- a/pkgs/servers/sonarr/update.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl gnused nix-prefetch jq - -set -e - -dirname="$(dirname "$0")" - -updateHash() -{ - version=$1 - arch=$2 - os=$3 - - hashKey="${arch}-${os}_hash" - - url="https://github.com/Sonarr/Sonarr/releases/download/v${version}/Sonarr.main.${version}.${os}-${arch}.tar.gz"; - hash=$(nix-prefetch-url --type sha256 $url) - sriHash="$(nix hash to-sri --type sha256 $hash)" - - sed -i "s|$hashKey = \"[a-zA-Z0-9\/+-=]*\";|$hashKey = \"$sriHash\";|g" "$dirname/default.nix" -} - -updateVersion() -{ - sed -i "s/version = \"[0-9.]*\";/version = \"$1\";/g" "$dirname/default.nix" -} - -currentVersion=$(cd $dirname && nix eval --raw -f ../../.. sonarr.version) - -latestTag=$(curl https://api.github.com/repos/Sonarr/Sonarr/releases/latest | jq -r ".tag_name") -latestVersion="$(expr $latestTag : 'v\(.*\)')" - -if [[ "$currentVersion" == "$latestVersion" ]]; then - echo "Sonarr is up-to-date: ${currentVersion}" - exit 0 -fi - -updateVersion $latestVersion - -updateHash $latestVersion x64 linux -updateHash $latestVersion arm64 linux -updateHash $latestVersion x64 osx -updateHash $latestVersion arm64 osx diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4ae0dbac83ba..01ec2d383fa7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13037,8 +13037,6 @@ with pkgs; solvespace = callPackage ../applications/graphics/solvespace { }; - sonarr = callPackage ../servers/sonarr { }; - sonata = callPackage ../applications/audio/sonata { }; sony-headphones-client = callPackage ../applications/audio/sony-headphones-client { };