This commit is contained in:
Rasyidan Akbar F. 2025-10-01 13:39:17 +07:00
commit ce6632d57f
2 changed files with 28 additions and 0 deletions

View file

@ -187,6 +187,22 @@
echo "Bun/Node web shell ready"
'';
};
rust = pkgs.mkShell {
name = "rust";
packages = with pkgs; [
cargo
rustc
rust-analyzer
rustfmt
clippy
];
shellHook = ''
mkdir -p "$PWD/.cache/cargo"
export CARGO_HOME="$PWD/.cache/cargo"
echo "Rust toolchain shell ready"
'';
};
};
in baseShells // zigShell);

View file

@ -47,6 +47,7 @@ let
pkgs.nodejs_20
else
getPkg "nodejs";
cargoPackage = getPkg "cargo";
toolSpecs = [
{
@ -64,6 +65,11 @@ let
cfg = cfg.node;
defaultPackage = nodePackage;
}
{
name = "cargo";
cfg = cfg.cargo;
defaultPackage = cargoPackage;
}
];
languagePackages = mkToolPackages toolSpecs;
@ -90,6 +96,12 @@ in {
description = "Node.js runtime for CLI tooling.";
};
cargo = mkToolOption {
name = "Cargo";
defaultPackage = cargoPackage;
description = "Rust package manager and toolchain.";
};
extraPackages = mkOption {
type = types.listOf types.package;
default = [ ];