diff --git a/pkgs/by-name/in/interlude/deps.json b/pkgs/by-name/in/interlude/deps.json
new file mode 100644
index 000000000000..d99a60dda548
--- /dev/null
+++ b/pkgs/by-name/in/interlude/deps.json
@@ -0,0 +1,722 @@
+[
+ {
+ "pname": "DiscordRichPresence",
+ "version": "1.2.1.24",
+ "hash": "sha256-oRNrlF1/yK0QvrW2+48RsmSg9h9/pDIfA56/bpoHXFU="
+ },
+ {
+ "pname": "FParsec",
+ "version": "1.1.1",
+ "hash": "sha256-BFTUFsdUDtPf3Y7YYsIHGnR3SykVeE6MAN3NRHv+Qwc="
+ },
+ {
+ "pname": "FSharp.Core",
+ "version": "9.0.201",
+ "hash": "sha256-38Y0QFg/knogSJtxDVpVXKo5n4zAo8zaffeT6tbhahk="
+ },
+ {
+ "pname": "LZMA-SDK",
+ "version": "22.1.1",
+ "hash": "sha256-PI79dMSrLSmoJzQLSFxgfhDqdkyNvdlzFhxWbdrMKXs="
+ },
+ {
+ "pname": "ManagedBass",
+ "version": "3.1.1",
+ "hash": "sha256-JhcmZiLchAQXrFG6+ye/w3W4IG6f63K/hH+fAWNM90I="
+ },
+ {
+ "pname": "ManagedBass.Fx",
+ "version": "3.1.1",
+ "hash": "sha256-AJHXB/q9CtEPw9JVlX0ZhOju5gi+Dm3ftUURaYGvq6E="
+ },
+ {
+ "pname": "Microsoft.Data.Sqlite",
+ "version": "8.0.0",
+ "hash": "sha256-0Q+1SxcHyNgkz4DUTJVaiteOQGydf2Uzk6y/R/rwwws="
+ },
+ {
+ "pname": "Microsoft.Data.Sqlite.Core",
+ "version": "8.0.0",
+ "hash": "sha256-aew8/vRyzCc7MMNHziR8tsg66EFkJC+Snst3F+a3Ehc="
+ },
+ {
+ "pname": "Microsoft.NETCore.Platforms",
+ "version": "1.1.0",
+ "hash": "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM="
+ },
+ {
+ "pname": "Microsoft.NETCore.Platforms",
+ "version": "2.0.0",
+ "hash": "sha256-IEvBk6wUXSdyCnkj6tHahOJv290tVVT8tyemYcR0Yro="
+ },
+ {
+ "pname": "Microsoft.NETCore.Targets",
+ "version": "1.1.0",
+ "hash": "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ="
+ },
+ {
+ "pname": "Microsoft.Win32.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-mBNDmPXNTW54XLnPAUwBRvkIORFM7/j0D0I2SyQPDEg="
+ },
+ {
+ "pname": "Microsoft.Win32.Registry",
+ "version": "4.5.0",
+ "hash": "sha256-WMBXsIb0DgPFPaFkNVxY9b9vcMxPqtgFgijKYMJfV/0="
+ },
+ {
+ "pname": "NetCoreServer",
+ "version": "8.0.7",
+ "hash": "sha256-RUYic8uAgJGdhUCrMJQULKlHB6xvw9H1lnNGU1axNZw="
+ },
+ {
+ "pname": "NETStandard.Library",
+ "version": "1.6.1",
+ "hash": "sha256-iNan1ix7RtncGWC9AjAZ2sk70DoxOsmEOgQ10fXm4Pw="
+ },
+ {
+ "pname": "Newtonsoft.Json",
+ "version": "13.0.1",
+ "hash": "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo="
+ },
+ {
+ "pname": "OpenTK",
+ "version": "4.8.2",
+ "hash": "sha256-PnE/hFTE90bH95jjECBjiSbHnpT/Esb6sxfXTdHom58="
+ },
+ {
+ "pname": "OpenTK.Audio.OpenAL",
+ "version": "4.8.2",
+ "hash": "sha256-i5KRiTYTNMB4Y5Qd5xewaYrb9sBbnXMDu2QXbM3RCeU="
+ },
+ {
+ "pname": "OpenTK.Compute",
+ "version": "4.8.2",
+ "hash": "sha256-n3IjP9lOWvwGPtJz721MkyA13I1m17wRGpZtGd/ditc="
+ },
+ {
+ "pname": "OpenTK.Core",
+ "version": "4.8.2",
+ "hash": "sha256-59S4Vj13y8HtZT6RZTwO6ZZbk1GUNDcYx1rMdv5jr4I="
+ },
+ {
+ "pname": "OpenTK.Graphics",
+ "version": "4.8.2",
+ "hash": "sha256-DNpXqtM9Oj6wDGYSF2FD4A4ueWG892Wk6uGWffNspo0="
+ },
+ {
+ "pname": "OpenTK.Input",
+ "version": "4.8.2",
+ "hash": "sha256-jIIdhNaOlH2D2alRzZl60XaVapDWtpboBiOaHsu/V+U="
+ },
+ {
+ "pname": "OpenTK.Mathematics",
+ "version": "4.8.2",
+ "hash": "sha256-TPsts443n6iEajfH2EuYTKtubrWuTLiCrTB1F4FndIo="
+ },
+ {
+ "pname": "OpenTK.redist.glfw",
+ "version": "3.3.8.39",
+ "hash": "sha256-bg8bGfoDDqmZ/efLFVm8l5etQajIVvOcQ/Nv+yKD4Bc="
+ },
+ {
+ "pname": "OpenTK.Windowing.Common",
+ "version": "4.8.2",
+ "hash": "sha256-62E0rxgkNOg02WWqG/seMtNuIYksPK3Zjm24oRHblpw="
+ },
+ {
+ "pname": "OpenTK.Windowing.Desktop",
+ "version": "4.8.2",
+ "hash": "sha256-55Pbe8x1snZqqM87gmgrp2hD14A6XwTcW1PBjN/hWao="
+ },
+ {
+ "pname": "OpenTK.Windowing.GraphicsLibraryFramework",
+ "version": "4.8.2",
+ "hash": "sha256-a1MGtU+27pBNns55g8mOsxXpZxfEr6M62zLkIkkJTIY="
+ },
+ {
+ "pname": "runtime.any.System.Collections",
+ "version": "4.3.0",
+ "hash": "sha256-4PGZqyWhZ6/HCTF2KddDsbmTTjxs2oW79YfkberDZS8="
+ },
+ {
+ "pname": "runtime.any.System.Diagnostics.Tools",
+ "version": "4.3.0",
+ "hash": "sha256-8yLKFt2wQxkEf7fNfzB+cPUCjYn2qbqNgQ1+EeY2h/I="
+ },
+ {
+ "pname": "runtime.any.System.Diagnostics.Tracing",
+ "version": "4.3.0",
+ "hash": "sha256-dsmTLGvt8HqRkDWP8iKVXJCS+akAzENGXKPV18W2RgI="
+ },
+ {
+ "pname": "runtime.any.System.Globalization",
+ "version": "4.3.0",
+ "hash": "sha256-PaiITTFI2FfPylTEk7DwzfKeiA/g/aooSU1pDcdwWLU="
+ },
+ {
+ "pname": "runtime.any.System.Globalization.Calendars",
+ "version": "4.3.0",
+ "hash": "sha256-AYh39tgXJVFu8aLi9Y/4rK8yWMaza4S4eaxjfcuEEL4="
+ },
+ {
+ "pname": "runtime.any.System.IO",
+ "version": "4.3.0",
+ "hash": "sha256-vej7ySRhyvM3pYh/ITMdC25ivSd0WLZAaIQbYj/6HVE="
+ },
+ {
+ "pname": "runtime.any.System.Reflection",
+ "version": "4.3.0",
+ "hash": "sha256-ns6f++lSA+bi1xXgmW1JkWFb2NaMD+w+YNTfMvyAiQk="
+ },
+ {
+ "pname": "runtime.any.System.Reflection.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-Y2AnhOcJwJVYv7Rp6Jz6ma0fpITFqJW+8rsw106K2X8="
+ },
+ {
+ "pname": "runtime.any.System.Reflection.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-LkPXtiDQM3BcdYkAm5uSNOiz3uF4J45qpxn5aBiqNXQ="
+ },
+ {
+ "pname": "runtime.any.System.Resources.ResourceManager",
+ "version": "4.3.0",
+ "hash": "sha256-9EvnmZslLgLLhJ00o5MWaPuJQlbUFcUF8itGQNVkcQ4="
+ },
+ {
+ "pname": "runtime.any.System.Runtime",
+ "version": "4.3.0",
+ "hash": "sha256-qwhNXBaJ1DtDkuRacgHwnZmOZ1u9q7N8j0cWOLYOELM="
+ },
+ {
+ "pname": "runtime.any.System.Runtime.Handles",
+ "version": "4.3.0",
+ "hash": "sha256-PQRACwnSUuxgVySO1840KvqCC9F8iI9iTzxNW0RcBS4="
+ },
+ {
+ "pname": "runtime.any.System.Runtime.InteropServices",
+ "version": "4.3.0",
+ "hash": "sha256-Kaw5PnLYIiqWbsoF3VKJhy7pkpoGsUwn4ZDCKscbbzA="
+ },
+ {
+ "pname": "runtime.any.System.Text.Encoding",
+ "version": "4.3.0",
+ "hash": "sha256-Q18B9q26MkWZx68exUfQT30+0PGmpFlDgaF0TnaIGCs="
+ },
+ {
+ "pname": "runtime.any.System.Text.Encoding.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-6MYj0RmLh4EVqMtO/MRqBi0HOn5iG4x9JimgCCJ+EFM="
+ },
+ {
+ "pname": "runtime.any.System.Threading.Tasks",
+ "version": "4.3.0",
+ "hash": "sha256-agdOM0NXupfHbKAQzQT8XgbI9B8hVEh+a/2vqeHctg4="
+ },
+ {
+ "pname": "runtime.any.System.Threading.Timer",
+ "version": "4.3.0",
+ "hash": "sha256-BgHxXCIbicVZtpgMimSXixhFC3V+p5ODqeljDjO8hCs="
+ },
+ {
+ "pname": "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-LXUPLX3DJxsU1Pd3UwjO1PO9NM2elNEDXeu2Mu/vNps="
+ },
+ {
+ "pname": "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-qeSqaUI80+lqw5MK4vMpmO0CZaqrmYktwp6L+vQAb0I="
+ },
+ {
+ "pname": "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-SrHqT9wrCBsxILWtaJgGKd6Odmxm8/Mh7Kh0CUkZVzA="
+ },
+ {
+ "pname": "runtime.native.System",
+ "version": "4.3.0",
+ "hash": "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y="
+ },
+ {
+ "pname": "runtime.native.System.IO.Compression",
+ "version": "4.3.0",
+ "hash": "sha256-DWnXs4vlKoU6WxxvCArTJupV6sX3iBbZh8SbqfHace8="
+ },
+ {
+ "pname": "runtime.native.System.Net.Http",
+ "version": "4.3.0",
+ "hash": "sha256-c556PyheRwpYhweBjSfIwEyZHnAUB8jWioyKEcp/2dg="
+ },
+ {
+ "pname": "runtime.native.System.Security.Cryptography.Apple",
+ "version": "4.3.0",
+ "hash": "sha256-2IhBv0i6pTcOyr8FFIyfPEaaCHUmJZ8DYwLUwJ+5waw="
+ },
+ {
+ "pname": "runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I="
+ },
+ {
+ "pname": "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-wyv00gdlqf8ckxEdV7E+Ql9hJIoPcmYEuyeWb5Oz3mM="
+ },
+ {
+ "pname": "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-zi+b4sCFrA9QBiSGDD7xPV27r3iHGlV99gpyVUjRmc4="
+ },
+ {
+ "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple",
+ "version": "4.3.0",
+ "hash": "sha256-serkd4A7F6eciPiPJtUyJyxzdAtupEcWIZQ9nptEzIM="
+ },
+ {
+ "pname": "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-gybQU6mPgaWV3rBG2dbH6tT3tBq8mgze3PROdsuWnX0="
+ },
+ {
+ "pname": "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-VsP72GVveWnGUvS/vjOQLv1U80H2K8nZ4fDAmI61Hm4="
+ },
+ {
+ "pname": "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-4yKGa/IrNCKuQ3zaDzILdNPD32bNdy6xr5gdJigyF5g="
+ },
+ {
+ "pname": "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-HmdJhhRsiVoOOCcUvAwdjpMRiyuSwdcgEv2j9hxi+Zc="
+ },
+ {
+ "pname": "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-pVFUKuPPIx0edQKjzRon3zKq8zhzHEzko/lc01V/jdw="
+ },
+ {
+ "pname": "runtime.unix.Microsoft.Win32.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-LZb23lRXzr26tRS5aA0xyB08JxiblPDoA7HBvn6awXg="
+ },
+ {
+ "pname": "runtime.unix.System.Console",
+ "version": "4.3.0",
+ "hash": "sha256-AHkdKShTRHttqfMjmi+lPpTuCrM5vd/WRy6Kbtie190="
+ },
+ {
+ "pname": "runtime.unix.System.Diagnostics.Debug",
+ "version": "4.3.0",
+ "hash": "sha256-ReoazscfbGH+R6s6jkg5sIEHWNEvjEoHtIsMbpc7+tI="
+ },
+ {
+ "pname": "runtime.unix.System.IO.FileSystem",
+ "version": "4.3.0",
+ "hash": "sha256-Pf4mRl6YDK2x2KMh0WdyNgv0VUNdSKVDLlHqozecy5I="
+ },
+ {
+ "pname": "runtime.unix.System.Net.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-pHJ+I6i16MV6m77uhTC6GPY6jWGReE3SSP3fVB59ti0="
+ },
+ {
+ "pname": "runtime.unix.System.Net.Sockets",
+ "version": "4.3.0",
+ "hash": "sha256-IvgOeA2JuBjKl5yAVGjPYMPDzs9phb3KANs95H9v1w4="
+ },
+ {
+ "pname": "runtime.unix.System.Private.Uri",
+ "version": "4.3.0",
+ "hash": "sha256-c5tXWhE/fYbJVl9rXs0uHh3pTsg44YD1dJvyOA0WoMs="
+ },
+ {
+ "pname": "runtime.unix.System.Runtime.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-l8S9gt6dk3qYG6HYonHtdlYtBKyPb29uQ6NDjmrt3V4="
+ },
+ {
+ "pname": "SixLabors.Fonts",
+ "version": "1.0.0-beta15",
+ "hash": "sha256-ewHnwTH4kZ2IJ4jaC3yUcIhO/YYZndrpMyeUKDKRHmA="
+ },
+ {
+ "pname": "SixLabors.ImageSharp",
+ "version": "1.0.3",
+ "hash": "sha256-7xDWHx9oHRSM0u44GEpZJTYICTqhEMSohznFJ+H+g/g="
+ },
+ {
+ "pname": "SixLabors.ImageSharp",
+ "version": "1.0.4",
+ "hash": "sha256-mUa/3cWwdX4tZ07MPbfdmAIFgmAUJ3SffOb4SgKxrzo="
+ },
+ {
+ "pname": "SixLabors.ImageSharp.Drawing",
+ "version": "1.0.0-beta13",
+ "hash": "sha256-BkXH6NK6UGp2W7/uLCfhMyXcV/vlX2ftWCMnsElZ0UQ="
+ },
+ {
+ "pname": "SQLitePCLRaw.bundle_e_sqlite3",
+ "version": "2.1.6",
+ "hash": "sha256-dZD/bZsYXjOu46ZH5Y/wgh0uhHOqIxC+S+0ecKhr718="
+ },
+ {
+ "pname": "SQLitePCLRaw.core",
+ "version": "2.1.6",
+ "hash": "sha256-RxWjm52PdmMV98dgDy0BCpF988+BssRZUgALLv7TH/E="
+ },
+ {
+ "pname": "SQLitePCLRaw.lib.e_sqlite3",
+ "version": "2.1.6",
+ "hash": "sha256-uHt5d+SFUkSd6WD7Tg0J3e8eVoxy/FM/t4PAkc9PJT0="
+ },
+ {
+ "pname": "SQLitePCLRaw.provider.e_sqlite3",
+ "version": "2.1.6",
+ "hash": "sha256-zHc/YZsd72eXlI8ba1tv58HZWUIiyjJaxq2CCP1hQe8="
+ },
+ {
+ "pname": "System.AppContext",
+ "version": "4.3.0",
+ "hash": "sha256-yg95LNQOwFlA1tWxXdQkVyJqT4AnoDc+ACmrNvzGiZg="
+ },
+ {
+ "pname": "System.Buffers",
+ "version": "4.3.0",
+ "hash": "sha256-XqZWb4Kd04960h4U9seivjKseGA/YEIpdplfHYHQ9jk="
+ },
+ {
+ "pname": "System.Collections",
+ "version": "4.3.0",
+ "hash": "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc="
+ },
+ {
+ "pname": "System.Collections.Concurrent",
+ "version": "4.3.0",
+ "hash": "sha256-KMY5DfJnDeIsa13DpqvyN8NkReZEMAFnlmNglVoFIXI="
+ },
+ {
+ "pname": "System.Console",
+ "version": "4.3.0",
+ "hash": "sha256-Xh3PPBZr0pDbDaK8AEHbdGz7ePK6Yi1ZyRWI1JM6mbo="
+ },
+ {
+ "pname": "System.Diagnostics.Debug",
+ "version": "4.3.0",
+ "hash": "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM="
+ },
+ {
+ "pname": "System.Diagnostics.DiagnosticSource",
+ "version": "4.3.0",
+ "hash": "sha256-OFJRb0ygep0Z3yDBLwAgM/Tkfs4JCDtsNhwDH9cd1Xw="
+ },
+ {
+ "pname": "System.Diagnostics.Tools",
+ "version": "4.3.0",
+ "hash": "sha256-gVOv1SK6Ape0FQhCVlNOd9cvQKBvMxRX9K0JPVi8w0Y="
+ },
+ {
+ "pname": "System.Diagnostics.Tracing",
+ "version": "4.3.0",
+ "hash": "sha256-hCETZpHHGVhPYvb4C0fh4zs+8zv4GPoixagkLZjpa9Q="
+ },
+ {
+ "pname": "System.Globalization",
+ "version": "4.3.0",
+ "hash": "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI="
+ },
+ {
+ "pname": "System.Globalization.Calendars",
+ "version": "4.3.0",
+ "hash": "sha256-uNOD0EOVFgnS2fMKvMiEtI9aOw00+Pfy/H+qucAQlPc="
+ },
+ {
+ "pname": "System.Globalization.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-mmJWA27T0GRVuFP9/sj+4TrR4GJWrzNIk2PDrbr7RQk="
+ },
+ {
+ "pname": "System.IO",
+ "version": "4.3.0",
+ "hash": "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY="
+ },
+ {
+ "pname": "System.IO.Compression",
+ "version": "4.3.0",
+ "hash": "sha256-f5PrQlQgj5Xj2ZnHxXW8XiOivaBvfqDao9Sb6AVinyA="
+ },
+ {
+ "pname": "System.IO.Compression.ZipFile",
+ "version": "4.3.0",
+ "hash": "sha256-WQl+JgWs+GaRMeiahTFUbrhlXIHapzcpTFXbRvAtvvs="
+ },
+ {
+ "pname": "System.IO.FileSystem",
+ "version": "4.3.0",
+ "hash": "sha256-vNIYnvlayuVj0WfRfYKpDrhDptlhp1pN8CYmlVd2TXw="
+ },
+ {
+ "pname": "System.IO.FileSystem.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-LMnfg8Vwavs9cMnq9nNH8IWtAtSfk0/Fy4s4Rt9r1kg="
+ },
+ {
+ "pname": "System.IO.UnmanagedMemoryStream",
+ "version": "4.3.0",
+ "hash": "sha256-PmUcbYTfYKTeqf2PZU+ePmdS8ekXlc4Z3eUoRV3wdos="
+ },
+ {
+ "pname": "System.Linq",
+ "version": "4.3.0",
+ "hash": "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A="
+ },
+ {
+ "pname": "System.Linq.Expressions",
+ "version": "4.3.0",
+ "hash": "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8="
+ },
+ {
+ "pname": "System.Memory",
+ "version": "4.5.3",
+ "hash": "sha256-Cvl7RbRbRu9qKzeRBWjavUkseT2jhZBUWV1SPipUWFk="
+ },
+ {
+ "pname": "System.Net.Http",
+ "version": "4.3.0",
+ "hash": "sha256-UoBB7WPDp2Bne/fwxKF0nE8grJ6FzTMXdT/jfsphj8Q="
+ },
+ {
+ "pname": "System.Net.NameResolution",
+ "version": "4.3.0",
+ "hash": "sha256-eGZwCBExWsnirWBHyp2sSSSXp6g7I6v53qNmwPgtJ5c="
+ },
+ {
+ "pname": "System.Net.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-MY7Z6vOtFMbEKaLW9nOSZeAjcWpwCtdO7/W1mkGZBzE="
+ },
+ {
+ "pname": "System.Net.Sockets",
+ "version": "4.3.0",
+ "hash": "sha256-il7dr5VT/QWDg/0cuh+4Es2u8LY//+qqiY9BZmYxSus="
+ },
+ {
+ "pname": "System.Numerics.Vectors",
+ "version": "4.5.0",
+ "hash": "sha256-qdSTIFgf2htPS+YhLGjAGiLN8igCYJnCCo6r78+Q+c8="
+ },
+ {
+ "pname": "System.ObjectModel",
+ "version": "4.3.0",
+ "hash": "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q="
+ },
+ {
+ "pname": "System.Private.Uri",
+ "version": "4.3.0",
+ "hash": "sha256-fVfgcoP4AVN1E5wHZbKBIOPYZ/xBeSIdsNF+bdukIRM="
+ },
+ {
+ "pname": "System.Reflection",
+ "version": "4.3.0",
+ "hash": "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY="
+ },
+ {
+ "pname": "System.Reflection.Emit",
+ "version": "4.3.0",
+ "hash": "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU="
+ },
+ {
+ "pname": "System.Reflection.Emit.ILGeneration",
+ "version": "4.3.0",
+ "hash": "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA="
+ },
+ {
+ "pname": "System.Reflection.Emit.Lightweight",
+ "version": "4.3.0",
+ "hash": "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I="
+ },
+ {
+ "pname": "System.Reflection.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk="
+ },
+ {
+ "pname": "System.Reflection.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM="
+ },
+ {
+ "pname": "System.Reflection.TypeExtensions",
+ "version": "4.3.0",
+ "hash": "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng="
+ },
+ {
+ "pname": "System.Resources.ResourceManager",
+ "version": "4.3.0",
+ "hash": "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo="
+ },
+ {
+ "pname": "System.Runtime",
+ "version": "4.3.0",
+ "hash": "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg="
+ },
+ {
+ "pname": "System.Runtime.CompilerServices.Unsafe",
+ "version": "4.7.0",
+ "hash": "sha256-pORThFo85P8TrmfZCCPIXysVPcV2nW8hRlO6z4jVJps="
+ },
+ {
+ "pname": "System.Runtime.CompilerServices.Unsafe",
+ "version": "5.0.0",
+ "hash": "sha256-neARSpLPUzPxEKhJRwoBzhPxK+cKIitLx7WBYncsYgo="
+ },
+ {
+ "pname": "System.Runtime.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o="
+ },
+ {
+ "pname": "System.Runtime.Handles",
+ "version": "4.3.0",
+ "hash": "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms="
+ },
+ {
+ "pname": "System.Runtime.InteropServices",
+ "version": "4.3.0",
+ "hash": "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI="
+ },
+ {
+ "pname": "System.Runtime.InteropServices.RuntimeInformation",
+ "version": "4.3.0",
+ "hash": "sha256-MYpl6/ZyC6hjmzWRIe+iDoldOMW1mfbwXsduAnXIKGA="
+ },
+ {
+ "pname": "System.Runtime.Numerics",
+ "version": "4.3.0",
+ "hash": "sha256-P5jHCgMbgFMYiONvzmaKFeOqcAIDPu/U8bOVrNPYKqc="
+ },
+ {
+ "pname": "System.Security.AccessControl",
+ "version": "4.5.0",
+ "hash": "sha256-AFsKPb/nTk2/mqH/PYpaoI8PLsiKKimaXf+7Mb5VfPM="
+ },
+ {
+ "pname": "System.Security.Claims",
+ "version": "4.3.0",
+ "hash": "sha256-Fua/rDwAqq4UByRVomAxMPmDBGd5eImRqHVQIeSxbks="
+ },
+ {
+ "pname": "System.Security.Cryptography.Algorithms",
+ "version": "4.3.0",
+ "hash": "sha256-tAJvNSlczYBJ3Ed24Ae27a55tq/n4D3fubNQdwcKWA8="
+ },
+ {
+ "pname": "System.Security.Cryptography.Cng",
+ "version": "4.3.0",
+ "hash": "sha256-u17vy6wNhqok91SrVLno2M1EzLHZm6VMca85xbVChsw="
+ },
+ {
+ "pname": "System.Security.Cryptography.Csp",
+ "version": "4.3.0",
+ "hash": "sha256-oefdTU/Z2PWU9nlat8uiRDGq/PGZoSPRgkML11pmvPQ="
+ },
+ {
+ "pname": "System.Security.Cryptography.Encoding",
+ "version": "4.3.0",
+ "hash": "sha256-Yuge89N6M+NcblcvXMeyHZ6kZDfwBv3LPMDiF8HhJss="
+ },
+ {
+ "pname": "System.Security.Cryptography.OpenSsl",
+ "version": "4.3.0",
+ "hash": "sha256-DL+D2sc2JrQiB4oAcUggTFyD8w3aLEjJfod5JPe+Oz4="
+ },
+ {
+ "pname": "System.Security.Cryptography.Primitives",
+ "version": "4.3.0",
+ "hash": "sha256-fnFi7B3SnVj5a+BbgXnbjnGNvWrCEU6Hp/wjsjWz318="
+ },
+ {
+ "pname": "System.Security.Cryptography.X509Certificates",
+ "version": "4.3.0",
+ "hash": "sha256-MG3V/owDh273GCUPsGGraNwaVpcydupl3EtPXj6TVG0="
+ },
+ {
+ "pname": "System.Security.Principal",
+ "version": "4.3.0",
+ "hash": "sha256-rjudVUHdo8pNJg2EVEn0XxxwNo5h2EaYo+QboPkXlYk="
+ },
+ {
+ "pname": "System.Security.Principal.Windows",
+ "version": "4.3.0",
+ "hash": "sha256-mbdLVUcEwe78p3ZnB6jYsizNEqxMaCAWI3tEQNhRQAE="
+ },
+ {
+ "pname": "System.Security.Principal.Windows",
+ "version": "4.5.0",
+ "hash": "sha256-BkUYNguz0e4NJp1kkW7aJBn3dyH9STwB5N8XqnlCsmY="
+ },
+ {
+ "pname": "System.Text.Encoding",
+ "version": "4.3.0",
+ "hash": "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg="
+ },
+ {
+ "pname": "System.Text.Encoding.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-vufHXg8QAKxHlujPHHcrtGwAqFmsCD6HKjfDAiHyAYc="
+ },
+ {
+ "pname": "System.Text.RegularExpressions",
+ "version": "4.3.0",
+ "hash": "sha256-VLCk1D1kcN2wbAe3d0YQM/PqCsPHOuqlBY1yd2Yo+K0="
+ },
+ {
+ "pname": "System.Threading",
+ "version": "4.3.0",
+ "hash": "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc="
+ },
+ {
+ "pname": "System.Threading.Tasks",
+ "version": "4.3.0",
+ "hash": "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w="
+ },
+ {
+ "pname": "System.Threading.Tasks.Extensions",
+ "version": "4.3.0",
+ "hash": "sha256-X2hQ5j+fxcmnm88Le/kSavjiGOmkcumBGTZKBLvorPc="
+ },
+ {
+ "pname": "System.Threading.Tasks.Parallel",
+ "version": "4.3.0",
+ "hash": "sha256-8H2vRmsn29MNfMmCeIL5vHfbM19jWaLDKNLzDonCI+c="
+ },
+ {
+ "pname": "System.Threading.ThreadPool",
+ "version": "4.3.0",
+ "hash": "sha256-wW0QdvssRoaOfQLazTGSnwYTurE4R8FxDx70pYkL+gg="
+ },
+ {
+ "pname": "System.Threading.Timer",
+ "version": "4.3.0",
+ "hash": "sha256-pmhslmhQhP32TWbBzoITLZ4BoORBqYk25OWbru04p9s="
+ },
+ {
+ "pname": "System.ValueTuple",
+ "version": "4.5.0",
+ "hash": "sha256-niH6l2fU52vAzuBlwdQMw0OEoRS/7E1w5smBFoqSaAI="
+ },
+ {
+ "pname": "System.Xml.ReaderWriter",
+ "version": "4.3.0",
+ "hash": "sha256-QQ8KgU0lu4F5Unh+TbechO//zaAGZ4MfgvW72Cn1hzA="
+ },
+ {
+ "pname": "System.Xml.XDocument",
+ "version": "4.3.0",
+ "hash": "sha256-rWtdcmcuElNOSzCehflyKwHkDRpiOhJJs8CeQ0l1CCI="
+ }
+]
diff --git a/pkgs/by-name/in/interlude/package.nix b/pkgs/by-name/in/interlude/package.nix
new file mode 100644
index 000000000000..e2272f859556
--- /dev/null
+++ b/pkgs/by-name/in/interlude/package.nix
@@ -0,0 +1,116 @@
+{
+ lib,
+ buildDotnetModule,
+ fetchFromGitHub,
+ fetchpatch,
+ dotnetCorePackages,
+ copyDesktopItems,
+ makeDesktopItem,
+ nix-update-script,
+ imagemagick,
+ libbass,
+ libbass_fx,
+ glfw,
+ alsa-lib,
+}:
+
+let
+ version = "0.7.28.1";
+in
+buildDotnetModule {
+ pname = "interlude";
+ inherit version;
+
+ src = fetchFromGitHub {
+ owner = "YAVSRG";
+ repo = "YAVSRG";
+ tag = "interlude-v${version}";
+ fetchSubmodules = true;
+ hash = "sha256-0Qbnywbq4cs/WPhvCou31FFKdqjRhZ4Aww06D1h5Nx4=";
+ };
+
+ patches = [
+ # Fallback game dir when the executable dir is not writable
+ # https://github.com/YAVSRG/YAVSRG/pull/65
+ (fetchpatch {
+ name = "log-path.patch";
+ url = "https://github.com/YAVSRG/YAVSRG/commit/6e56a3d78caf4cbc8e17190fea3adb4d061d5284.patch";
+ hash = "sha256-eyvq2GIAZuHYhtAdYLe0csJxHZCrw9soXmRl2eJA7Bg=";
+ })
+
+ # Looking for bass and bass_fx in LD_LIBRARY_PATH
+ # https://github.com/YAVSRG/YAVSRG/pull/66
+ (fetchpatch {
+ name = "library-path.patch";
+ url = "https://github.com/YAVSRG/YAVSRG/commit/911a8b7f3931823d9fee99f0cb679a3c03298286.patch";
+ hash = "sha256-WUbI38EMGvlVl8h7YLJLPsGczhX5PWMLTmy94IRxaBM=";
+ })
+ ];
+
+ nativeBuildInputs = [
+ copyDesktopItems
+ imagemagick
+ ];
+
+ projectFile = "interlude/src/Interlude.fsproj";
+ nugetDeps = ./deps.json;
+ dotnet-sdk = dotnetCorePackages.sdk_9_0;
+ dotnet-runtime = dotnetCorePackages.runtime_9_0;
+
+ runtimeDeps = [
+ # replaced bundled ones in engine/lib/linux-x64
+ libbass
+ libbass_fx
+ # replace the bundled one by OpenTK
+ glfw
+ # not sure why this is needed but no audio devices can be found by libbass without this
+ alsa-lib
+ ];
+
+ executables = [ "Interlude" ];
+
+ postInstall = ''
+ # The icon is pixel art, so it may be converted to a scalable SVG.
+ mkdir -p $out/share/icons/hicolor/scalable/apps
+ magick site/files/favicon.png -alpha on -sample 20x20! txt:- | \
+ sed '1d; s/[():,]/ /g' | \
+ awk '{if ($6>0) printf "\n",$1*4,$2*4,$3,$4,$5}' | \
+ (echo '') \
+ > $out/share/icons/hicolor/scalable/apps/interlude.svg
+ '';
+
+ preFixup = ''
+ # Remove bundled GLFW and use the one from nixpkgs instead.
+ rm $out/lib/interlude/libglfw* || true
+ '';
+
+ desktopItems = [
+ (makeDesktopItem {
+ name = "Interlude";
+ exec = "Interlude %U";
+ comment = "A keyboard rhythm game, built for fun";
+ icon = "interlude";
+ desktopName = "Interlude";
+ genericName = "Interlude";
+ categories = [
+ "Game"
+ "Music"
+ ];
+ })
+ ];
+
+ passthru.updateScript = nix-update-script { };
+
+ meta = {
+ description = "Keyboard rhythm game built for fun, part of the YAVSRG project";
+ homepage = "https://www.yavsrg.net";
+ changelog = "https://www.yavsrg.net/interlude/changelog.html";
+ license = with lib.licenses; [
+ gpl3Only
+ mit
+ ];
+ maintainers = with lib.maintainers; [ ulysseszhan ];
+ platforms = lib.platforms.linux;
+ mainProgram = "Interlude";
+ };
+}