bankserver_rust/package.nix
2025-04-17 17:06:00 +02:00

45 lines
805 B
Nix

{
rustPlatform,
stdenv,
pkg-config,
openssl,
redocly,
yq-go,
targetPlatform,
src,
schemas,
cargoDeps,
rev ? "dirty",
}:
rustPlatform.buildRustPackage {
pname = "bankingserver";
version = "unstable-${rev}";
inherit src cargoDeps;
nativeBuildInputs = [
schemas
redocly
yq-go
pkg-config
];
buildInputs = [ openssl ];
env.OPENSSL_NO_VENDOR = true;
preBuild = ''
cp -r ${schemas}/share/bankserver/schemas schemas
yq eval-all -n 'load("openapi-def.yaml") *n load("schemas/schemas.json")' > openapi-temp.yaml
redocly bundle openapi-temp.yaml -o openapi.json
'';
cargoBuildFlags = "--bin bankserver";
CARGO_BUILD_TARGET = targetPlatform.config;
TARGET_CC = "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc";
doCheck = false;
}