49 lines
1.0 KiB
Nix
49 lines
1.0 KiB
Nix
{
|
|
env,
|
|
pkgs,
|
|
deps,
|
|
version,
|
|
netrcConfig,
|
|
nix-gitignore,
|
|
packageSources,
|
|
dotnet-sdk,
|
|
dotnet-runtime,
|
|
buildDotnetModule,
|
|
}:
|
|
buildDotnetModule rec {
|
|
inherit
|
|
version
|
|
dotnet-sdk
|
|
dotnet-runtime
|
|
;
|
|
name = "Atlantis";
|
|
pname = "Atlantis";
|
|
# NOTE(mrtz): Ensures reproducibility and reduces closure size,
|
|
# by filtering out irrelevant files and `.git` which changes between commits.
|
|
src = nix-gitignore.gitignoreSource [ ] ../..;
|
|
projectFile = "src/Atlantis/src/Server/Server.fsproj";
|
|
dotnetRestoreFlags = "--force-evaluate";
|
|
nugetDeps = deps {
|
|
inherit
|
|
name
|
|
pkgs
|
|
netrcConfig
|
|
packageSources
|
|
;
|
|
lockfiles = [
|
|
../../src/Atlantis/src/Server/packages.lock.json
|
|
../../src/DataAgent/src/Entity/packages.lock.json
|
|
];
|
|
};
|
|
runtimeDeps = [
|
|
pkgs.netcdf
|
|
];
|
|
doCheck = false;
|
|
buildType = env;
|
|
# Copy `appsettings` for local build
|
|
postBuild = ''
|
|
mkdir -p $out/bin
|
|
cp src/Atlantis/src/Server/appsettings.json $out/bin/
|
|
'';
|
|
}
|