diff --git a/substrate/shell.nix b/substrate/shell.nix
index 73453fc66da6d6bc6a608118db2ad7cd5176b39a..03c95f56fc5dbb34e78f27c364ae06ff1166e19b 100644
--- a/substrate/shell.nix
+++ b/substrate/shell.nix
@@ -7,6 +7,7 @@ let
     });
   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
@@ -19,6 +20,7 @@ with nixpkgs; pkgs.mkShell {
     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";