blob: b28f36182c4c86500a6c7f056336ee2d3699c3e4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
{ pkgs, rVersion }:
{
name,
nugetDeps ? null,
projectReferences ? [ ],
projectFile ? "${name}/${name}.csproj",
runtimeId ? null,
useAppHost ? null,
packNupkg ? true,
srcRoot ? ./.,
...
}@args:
pkgs.buildDotnetModule (
pkgs.lib.recursiveUpdate
(rec {
inherit
projectReferences
nugetDeps
projectFile
runtimeId
useAppHost
srcRoot
packNupkg
;
pname = "${name}";
version = "1.0.0-" + rVersion;
dotnetPackFlags = [
"--include-symbols"
"--include-source"
"--version-suffix ${rVersion}"
];
# dotnetFlags = [ "-v:n" ]; # diag
dotnet-sdk = pkgs.dotnet-sdk_10;
dotnet-runtime = pkgs.dotnet-aspnetcore_10;
src = pkgs.lib.cleanSource srcRoot;
passthru = {
__nugetDeps = if args ? nugetDeps then args.nugetDeps else null;
__sbDmProjectRefs =
if args ? projectReferences then
{
names = builtins.map (pr: pr.pname) args.projectReferences;
derivations = args.projectReferences;
}
else
null;
};
meta = with pkgs.lib; {
description = "Spacebar Server, Typescript Edition (C# extensions)";
homepage = "https://github.com/spacebarchat/server";
license = licenses.agpl3Plus;
maintainers = with maintainers; [ RorySys ];
mainProgram = name;
};
})
(
builtins.removeAttrs args [
"name"
"nugetDeps"
"projectReferences"
"projectFile"
"runtimeId"
"useAppHost"
"packNupkg"
"srcRoot"
]
)
)
|