I have a flake that has the following dependencies:
Inputs:
├───flake-parts: github:hercules-ci/flake-parts/49f0870db23e8c1ca0b5259734a02cd9e1e371a1
│ └───nixpkgs-lib: github:nix-community/nixpkgs.lib/656a64127e9d791a334452c6b6606d17539476e2
├───haskell-flake: github:srid/haskell-flake/af2ba40f23824556b12d1cdfdf392e263876d644
├───nixpkgs: github:nixos/nixpkgs/8f1b52b04f2cb6e5ead50bd28d76528a2f0380ef
├───persistent-sqlite: git+https://code.vergara.tech/Vergara_Tech/persistent-sqlite?ref=master&rev=4ecc955c183dfacfb4c41b9de04c336dab0ca768
│ ├───flake-parts follows input 'flake-parts'
│ ├───haskell-flake follows input 'haskell-flake'
│ └───nixpkgs follows input 'nixpkgs'
├───qrc: git+https://code.vergara.tech/Vergara_Tech/qrc?ref=master&rev=9554d32f8ab4e26d568d1eda46ace907b896a1b4
│ ├───crane: github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18
│ ├───flake-parts follows input 'flake-parts'
│ ├───foreign-rust: git+https://code.vergara.tech/Vergara_Tech/haskell-foreign-rust?ref=main&rev=6366ca7b0f9a3c0b71bee88ae396393e692852ad
│ │ ├───borsh: git+https://code.vergara.tech/Vergara_Tech/borsh.git?ref=main&rev=8d45db7fdce9a8b5b5f73ec550f1e8c17650c341
│ │ │ ├───flake-parts follows input 'qrc/foreign-rust/flake-parts'
│ │ │ ├───haskell-flake follows input 'qrc/foreign-rust/haskell-flake'
│ │ │ └───nixpkgs follows input 'qrc/foreign-rust/nixpkgs'
│ │ ├───crane: github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18
│ │ ├───flake-parts follows input 'qrc/flake-parts'
│ │ ├───haskell-flake follows input 'qrc/haskell-flake'
│ │ ├───nixpkgs follows input 'qrc/nixpkgs'
│ │ └───rust-overlay follows input 'qrc/rust-overlay'
│ ├───haskell-flake follows input 'haskell-flake'
│ ├───nixpkgs follows input 'nixpkgs'
│ └───rust-overlay: github:oxalica/rust-overlay/12419593ce78f2e8e1e89a373c6515885e218acb
│ └───nixpkgs follows input 'qrc/nixpkgs'
└───zcash-haskell: git+https://code.vergara.tech/Vergara_Tech/zcash-haskell?ref=ravnix&rev=3d1eb7e44ea473a69e62402f93cdfd3ad5a12506
├───crane: github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18
├───flake-parts follows input 'flake-parts'
├───haskell-flake follows input 'haskell-flake'
├───hexstring: git+https://code.vergara.tech/Vergara_Tech/haskell-hexstring?ref=master&rev=dd8c129b3e75c3d27ea596699b5a43ad0547f0e2
│ ├───flake-parts follows input 'zcash-haskell/flake-parts'
│ ├───foreign-rust: git+https://code.vergara.tech/Vergara_Tech/haskell-foreign-rust?ref=main&rev=6366ca7b0f9a3c0b71bee88ae396393e692852ad
│ │ ├───borsh: git+https://code.vergara.tech/Vergara_Tech/borsh.git?ref=main&rev=8d45db7fdce9a8b5b5f73ec550f1e8c17650c341
│ │ │ ├───flake-parts follows input 'zcash-haskell/hexstring/foreign-rust/flake-parts'
│ │ │ ├───haskell-flake follows input 'zcash-haskell/hexstring/foreign-rust/haskell-flake'
│ │ │ └───nixpkgs follows input 'zcash-haskell/hexstring/foreign-rust/nixpkgs'
│ │ ├───crane: github:ipetkov/crane/323b5746d89e04b22554b061522dfce9e4c49b18
│ │ ├───flake-parts follows input 'zcash-haskell/hexstring/flake-parts'
│ │ ├───haskell-flake follows input 'zcash-haskell/hexstring/haskell-flake'
│ │ ├───nixpkgs follows input 'zcash-haskell/hexstring/nixpkgs'
│ │ └───rust-overlay: github:oxalica/rust-overlay/c52e346aedfa745564599558a096e88f9a5557f9
│ │ └───nixpkgs follows input 'zcash-haskell/hexstring/foreign-rust/nixpkgs'
│ ├───haskell-flake follows input 'zcash-haskell/haskell-flake'
│ └───nixpkgs follows input 'zcash-haskell/nixpkgs'
├───nixpkgs follows input 'nixpkgs'
└───rust-overlay: github:oxalica/rust-overlay/12419593ce78f2e8e1e89a373c6515885e218acb
└───nixpkgs follows input 'zcash-haskell/nixpkgs'
When running nix flake check I get this error:
error: a 'aarch64-darwin' with features {} is required to build '/nix/store/wprydkf14qwvnnyz8vvhbn7rbhchr8rz-cabal2nix-borsh.drv', but I am a 'x86_64-linux' with features {benchmark, big-parallel, kvm, nixos-test, uid-range}
I am importing these libraries into the main flake like this:
flake-parts.lib.mkFlake {inherit inputs;} {
systems = nixpkgs.lib.systems.flakeExposed;
imports = [
inputs.haskell-flake.flakeModule
];
perSystem = {
self',
config,
pkgs,
inputs',
system,
...
}: {
haskellProjects.default = {
imports = [
inputs.zcash-haskell.haskellFlakeProjectModules.output
inputs.persistent-sqlite.haskellFlakeProjectModules.output
inputs.qrc.haskellFlakeProjectModules.output
];
...
};
The new addition is the qrc library and I don't understand why this is causing nix to try to build the wrong architecture for borsh. All these flakes pass their checks and build correctly on their own.
I have a flake that has the following dependencies:
When running
nix flake checkI get this error:I am importing these libraries into the main flake like this:
The new addition is the
qrclibrary and I don't understand why this is causing nix to try to build the wrong architecture forborsh. All these flakes pass their checks and build correctly on their own.