forked from Trow-Registry/trow
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathshell.nix
34 lines (32 loc) · 966 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
28
29
30
31
32
33
34
{ date ? "2020-09-28" }:
let
# To update nixpkgs or mozilla overlay pin:
# 1. Update `url` to the desired rev
# 2. Determine required sha256 by running `nix-prefetch-url --unpack <URL>`
pkgs = import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/0cfe5377e8993052f9b0dd56d058f8008af45bd9.tar.gz";
sha256 = "0i3ybddi2mrlaz3di3svdpgy93zwmdglpywih4s9rd3wj865gzn1";
});
moz-overlay = import (fetchTarball {
url = "https://github.com/mozilla/nixpkgs-mozilla/archive/9f3df31ebb32ac97e385e07edd954fbf027ca242.tar.gz";
sha256 = "1swds7y664m04m1grjhypvslxzzwhiby4xqlc0aml62gbyi88jya";
});
in
with pkgs { overlays = [ moz-overlay ]; };
mkShell {
buildInputs = [
(rustChannelOf { inherit date; channel = "nightly"; }).rust
pkgconfig
cmake
perl
go
sqlite
protobuf
openssl
valgrind
];
shellHook = ''
>&2 echo Rust Nightly: ${date}
export PROTOC="${protobuf}/bin/protoc"
'';
}