forked from paritytech/substrate
-
Notifications
You must be signed in to change notification settings - Fork 0
/
shell.nix
27 lines (26 loc) · 902 Bytes
/
shell.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
let
mozillaOverlay =
import (builtins.fetchGit {
# TODO: revert to upstream after https://github.com/mozilla/nixpkgs-mozilla/pull/250
url = "https://github.com/andresilva/nixpkgs-mozilla.git";
rev = "7626aca57c20f3f6ee28cce8657147d9b358ea18";
});
nixpkgs = import <nixpkgs> { overlays = [ mozillaOverlay ]; };
rust-nightly = with nixpkgs; ((rustChannelOf { date = "2021-07-06"; channel = "nightly"; }).rust.override {
extensions = [ "rust-src" ];
targets = [ "wasm32-unknown-unknown" ];
});
in
with nixpkgs; pkgs.mkShell {
buildInputs = [
clang
pkg-config
rust-nightly
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
RUST_SRC_PATH="${rust-nightly}/lib/rustlib/src/rust/src";
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
PROTOC = "${protobuf}/bin/protoc";
ROCKSDB_LIB_DIR = "${rocksdb}/lib";
}