nixpkgs/pkgs/development/tools/rq/default.nix

76 lines
1.9 KiB
Nix

{ 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 <<EOF)
diff -u a/Cargo.toml b/Cargo.toml
--- a/Cargo.toml 2016-12-03 21:29:31.615019030 +0100
+++ b/Cargo.toml 2016-12-03 21:30:12.188170359 +0100
@@ -40,15 +40,16 @@
version = "*"
[dependencies.serde_json]
-branch = "v0.9.0"
-git = "https://github.com/serde-rs/json.git"
+path = "${serde_json}/json"
+version = "*"
[dependencies.toml]
features = ["serde"]
version = "*"
[dependencies.v8]
-git = "https://github.com/dflemstr/v8-rs.git"
+path = "${v8_rs}"
+version = "*"
[features]
shared = ["v8/shared"]
EOF
'';
depsSha256 = "1pci9iwf4y574q32b05gbc490iqw5i7shvqgb1gblchrihvlkddq";
buildInputs = [ llvmPackages.clang-unwrapped v8 ];
configurePhase = ''
export LIBCLANG_PATH="${llvmPackages.clang-unwrapped}/lib"
export V8_SOURCE="${v8}"
'';
meta = with stdenv.lib; {
description = "A tool for doing record analysis and transformation";
homepage = https://github.com/dflemstr/rq ;
license = with licenses; [ asl20 ];
maintainers = [ maintainers.aristid ];
platforms = platforms.all;
broken = true;
};
}