Files
company-nix/shells/rust.nix
2026-04-10 17:25:08 +02:00

25 lines
436 B
Nix

{
lib,
pkgs,
extraPackages ? [ ],
inputsFrom ? [ ],
shellHook ? "",
}:
let
optionalPackage = path: lib.attrByPath path null pkgs;
in
pkgs.mkShell {
inherit inputsFrom shellHook;
packages = builtins.filter (pkg: pkg != null) (
[
pkgs.cargo
pkgs.rustc
(optionalPackage [ "rust-analyzer" ])
(optionalPackage [ "rustfmt" ])
(optionalPackage [ "clippy" ])
]
++ extraPackages
);
}