Álex 4ad8beb0a0
chore(deps): update Node to 0.1.3-rc.10-compatible version (#28)
* Update Node to 0.1.3-rc.10-compatible version: current master with rust-rapidsnark fixes.
* Skip zk circuit staging when logos_blockchain is mocked in unit tests.
2026-06-10 19:57:49 +02:00

50 lines
1.8 KiB
Nix

{
description = "Logos Blockchain Module - Qt6 Plugin";
inputs = {
logos-module-builder.url = "github:logos-co/logos-module-builder";
logos-blockchain.url = "github:logos-blockchain/logos-blockchain?ref=feddb4616512bf7954b503d8de4287d2ed59c4ba"; # v0.1.3-rc.10-compatible + rust-rapidsnark nix fixes
};
outputs = inputs@{ logos-module-builder, ... }:
logos-module-builder.lib.mkLogosModule {
src = ./.;
configFile = ./metadata.json;
flakeInputs = inputs;
externalLibInputs = {
logos_blockchain = inputs.logos-blockchain;
};
tests = {
dir = ./tests;
mockCLibs = [ "logos_blockchain" ];
};
preConfigure = { externalLibs }:
if externalLibs ? logos_blockchain then ''
if [ -d "${externalLibs.logos_blockchain}/circuits" ]; then
echo "Staging zk circuits from logos-blockchain..."
cp -r "${externalLibs.logos_blockchain}/circuits" ./circuits
chmod -R u+w ./circuits
else
echo "WARNING: no circuits/ found in logos-blockchain derivation"
fi
'' else ''
echo "Skipping zk circuits staging (logos_blockchain mocked for tests)"
'';
# Logos Core Edge-case
# The current version of Logos Core expects circuits' binaries under `lib/circuits/`.
# Until we address this in Logos Core, we use this hook to include to ensure the circuits' binaries
# are included in the binary bundle and avoid the circuits being mangled by Nix (which did that when
# copying them in a previous phase).
postInstall = ''
if [ -d "$LOGOS_MODULE_SOURCE_DIR/circuits" ]; then
cp -r "$LOGOS_MODULE_SOURCE_DIR/circuits" "$out/lib/circuits"
chmod -R u+w "$out/lib/circuits"
fi
'';
};
}