diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix index bbea045f637..a69ef5c6b07 100644 --- a/pkgs/build-support/rust/default.nix +++ b/pkgs/build-support/rust/default.nix @@ -6,6 +6,7 @@ , logLevel ? "" , buildInputs ? [] , cargoUpdateHook ? "" +, cargoDepsHook ? "" , ... } @ args: let @@ -28,6 +29,8 @@ in stdenv.mkDerivation (args // { configurePhase = args.configurePhase or "true"; postUnpack = '' + eval "$cargoDepsHook" + echo "Using cargo deps from $cargoDeps" cp -r "$cargoDeps" deps diff --git a/pkgs/development/tools/rq/default.nix b/pkgs/development/tools/rq/default.nix new file mode 100644 index 00000000000..b383812d321 --- /dev/null +++ b/pkgs/development/tools/rq/default.nix @@ -0,0 +1,76 @@ +{ stdenv, fetchFromGitHub, rustPlatform, llvmPackages, v8 }: + +with rustPlatform; + +buildRustPackage rec { + name = "rq-${version}"; + version = "0.9.2"; + + src = fetchFromGitHub { + owner = "dflemstr"; + repo = "rq"; + rev = "v${version}"; + sha256 = "051k7ls2mbjf584crayd654wm8m7gk3b7s73j97f9l8sbppdhpcq"; + }; + + serde_json = fetchFromGitHub { + owner = "serde-rs"; + repo = "json"; + rev = "0c05059e4533368020bd356bd708c38286810a7d"; + sha256 = "0924ngqbsif2vmmpgn8l2gg4bzms0z0i7yng0zx6sdv0x836lw43"; + }; + + v8_rs = fetchFromGitHub { + owner = "dflemstr"; + repo = "v8-rs"; + rev = "0772be5b2e84842a2d434963702bc2995aeda90b"; + sha256 = "0h2n431rp6nqpip7dy7xpckkvcr19aq7l1f3x3wlrj02xi4c8mad"; + }; + + cargoDepsHook = '' + # use non-git dependencies + (cd $sourceRoot && patch -p1 <