rustToolchainDev = super.rust-bin.stable.latest.default.override {
extensions = [ "rust-src" "rust-analyzer" ];
};
+ rustToolchainDevWasm = super.rust-bin.stable.latest.default.override {
+ extensions = [ "rust-src" "rust-analyzer" ];
+ targets = [ "wasm32-unknown-unknown" ];
+ };
rustToolchainNightly = super.rust-bin.selectLatestNightlyWith (toolchain:
toolchain.default.override {
extensions = [ "rust-src" "rust-analyzer" "miri" ];
in
{
devShells = {
- default = pkgs.mkShell {
+ default = pkgs.mkShell.override { stdenv = pkgs.clangMultiStdenv; } {
nativeBuildInputs = nativeBuildInputs;
buildInputs = buildInputs ++ (with pkgs; [
rustToolchainDev
]);
};
+ wasm-js = pkgs.mkShell.override { stdenv = pkgs.clangMultiStdenv; } {
+ nativeBuildInputs = nativeBuildInputs;
+ buildInputs = buildInputs ++ (with pkgs; [
+ wasm-pack
+ rustToolchainDevWasm
+ ]);
+ TARGET_CC = "${pkgs.clangMultiStdenv.cc}/bin/clang";
+ hardeningDisable = [ "all" ];
+ };
# For use with Miri and stuff like it
nightly = pkgs.mkShell {
nativeBuildInputs = nativeBuildInputs;