{ pkgs ? import { } }: with pkgs; let jasmin-src = fetchFromGitHub { owner = "jasmin-lang"; repo = "jasmin"; rev = "c2adabafb8df0a60e7cf4e56041d3be3aca387a3"; hash = "sha256-ySw4eVbuV7suO8EjyaMOTqeNsPq1D6vsorCZlXffTPU="; }; jasmin-drv = callPackage "${jasmin-src}/default.nix" { inherit pkgs; }; jasmin = jasmin-drv.overrideAttrs { name = "jasmin with syscalls"; buildPhase = '' make -C compiler/ CIL make -C compiler/ ''; }; libjade = fetchFromGitHub { owner = "Rixxc"; repo = "libjade"; rev = "612b7744f8942e4cc7a1ce6c9dfe3ab46e96d515"; hash = "sha256-w7AgyGlcwlMyo94KFit3fTpyG7hlNsQQWElGFDEQRCQ="; }; in stdenv.mkDerivation { name = "ed25519-agent"; src = nix-gitignore.gitignoreSource [ ] ./.; nativeBuildInputs = [ gnumake gcc jasmin ]; configurePhase = '' mkdir build ''; installPhase = '' mkdir -p $out/lib cp build/libagent.a $out/lib ''; JASMINPATH = "Jade=${libjade}/src/"; }