2021-12-20 13:37:26 -05:00
|
|
|
# Utilities for developing in rust
|
|
|
|
{ config, pkgs, unstable, fenix, ... }:
|
|
|
|
{
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
# Use rustup to get the compiler
|
|
|
|
rustup
|
|
|
|
# Install the latest rust analyzer
|
|
|
|
fenix.rust-analyzer
|
2022-03-31 01:21:37 -04:00
|
|
|
# Sccache for faster builds
|
2021-12-20 13:37:26 -05:00
|
|
|
sccache
|
|
|
|
# Misc cargo utilites
|
|
|
|
cargo-binutils # Allow invoking the llvm tools included with the toolchain
|
|
|
|
cargo-edit # Command line Cargo.toml manipulation
|
|
|
|
cargo-asm # Dump the generated assembly
|
|
|
|
cargo-fuzz # front end for fuzz testing rust
|
|
|
|
cargo-license # Audit the licenses of dependencies
|
|
|
|
cargo-criterion # Benchmarking front end
|
|
|
|
cargo-audit # Check dependencies for known CVEs
|
|
|
|
cargo-bloat # Find out what's taking up space in the executable
|
|
|
|
cargo-udeps # Find unused dependencies
|
|
|
|
cargo-expand # Dump expanded macros
|
|
|
|
unstable.cargo-tarpaulin # Code coverage
|
|
|
|
cargo-play # Quickly execute code outside of a crate
|
2022-04-22 17:52:58 -04:00
|
|
|
# For building stuff that uses protocol buffers
|
|
|
|
protobuf
|
2021-12-20 13:37:26 -05:00
|
|
|
];
|
|
|
|
}
|