lol
1{
2 lib,
3 buildDotnetModule,
4 fetchFromGitHub,
5 dotnetCorePackages,
6 altcoinSupport ? false,
7}:
8
9buildDotnetModule rec {
10 pname = "btcpayserver";
11 version = "2.2.1";
12
13 src = fetchFromGitHub {
14 owner = "btcpayserver";
15 repo = "btcpayserver";
16 tag = "v${version}";
17 hash = "sha256-W6344r+Doz2aiYebeY3+UkFW7dq4aH/GUGqYyxnK4II=";
18 };
19
20 projectFile = "BTCPayServer/BTCPayServer.csproj";
21 nugetDeps = ./deps.json;
22
23 dotnet-sdk = dotnetCorePackages.sdk_8_0;
24 dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
25
26 buildType = if altcoinSupport then "Altcoins-Release" else "Release";
27
28 # macOS has a case-insensitive filesystem, so these two can be the same file
29 postFixup = ''
30 mv $out/bin/{BTCPayServer,btcpayserver} || :
31 '';
32
33 meta = {
34 description = "Self-hosted, open-source cryptocurrency payment processor";
35 homepage = "https://btcpayserver.org";
36 changelog = "https://github.com/btcpayserver/btcpayserver/blob/v${version}/Changelog.md";
37 maintainers = with lib.maintainers; [
38 kcalvinalvin
39 erikarvstedt
40 ];
41 license = lib.licenses.mit;
42 platforms = lib.platforms.linux ++ lib.platforms.darwin;
43 };
44}