2024-05-01 01:00:19 +02:00
|
|
|
# Keep sorted
|
|
|
|
{ cargo-deb
|
|
|
|
, default
|
|
|
|
, engage
|
|
|
|
, go
|
|
|
|
, inputs
|
|
|
|
, jq
|
|
|
|
, lychee
|
|
|
|
, mdbook
|
|
|
|
, mkShell
|
|
|
|
, olm
|
|
|
|
, system
|
2024-05-06 20:43:13 +02:00
|
|
|
, taplo
|
2024-05-01 01:00:19 +02:00
|
|
|
, toolchain
|
|
|
|
}:
|
|
|
|
|
|
|
|
mkShell {
|
|
|
|
env = default.env // {
|
|
|
|
# Rust Analyzer needs to be able to find the path to default crate
|
|
|
|
# sources, and it can read this environment variable to do so. The
|
|
|
|
# `rust-src` component is required in order for this to work.
|
|
|
|
RUST_SRC_PATH = "${toolchain}/lib/rustlib/src/rust/library";
|
|
|
|
};
|
|
|
|
|
|
|
|
# Development tools
|
|
|
|
nativeBuildInputs = default.nativeBuildInputs ++ [
|
|
|
|
# Always use nightly rustfmt because most of its options are unstable
|
|
|
|
#
|
|
|
|
# This needs to come before `toolchain` in this list, otherwise
|
|
|
|
# `$PATH` will have stable rustfmt instead.
|
|
|
|
inputs.fenix.packages.${system}.latest.rustfmt
|
|
|
|
|
2024-05-06 20:43:13 +02:00
|
|
|
# rust itself
|
2024-05-01 01:00:19 +02:00
|
|
|
toolchain
|
|
|
|
|
2024-05-06 20:43:13 +02:00
|
|
|
# CI tests
|
|
|
|
engage
|
|
|
|
|
|
|
|
# format toml files
|
|
|
|
taplo
|
|
|
|
|
2024-05-01 01:00:19 +02:00
|
|
|
# Needed for producing Debian packages
|
|
|
|
cargo-deb
|
|
|
|
|
|
|
|
# Needed for our script for Complement
|
|
|
|
jq
|
|
|
|
|
|
|
|
# Needed for Complement
|
|
|
|
go
|
|
|
|
olm
|
|
|
|
|
|
|
|
# Needed for our script for Complement
|
|
|
|
jq
|
|
|
|
|
|
|
|
# Needed for finding broken markdown links
|
|
|
|
lychee
|
|
|
|
|
|
|
|
# Useful for editing the book locally
|
|
|
|
mdbook
|
|
|
|
];
|
|
|
|
}
|