2020-11-11 12:53:37 +00:00
|
|
|
let
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs = import (builtins.fetchTarball
|
2023-11-19 13:22:15 +00:00
|
|
|
"https://github.com/NixOS/nixpkgs/archive/4d513ab5f170d66afa3387bdd718d41aa936ee9f.tar.gz") {
|
2021-12-05 08:58:31 +00:00
|
|
|
overlays = [ rust ];
|
|
|
|
};
|
2023-05-06 08:39:23 +00:00
|
|
|
rust = import (builtins.fetchTarball
|
2024-02-12 21:43:22 +00:00
|
|
|
"https://github.com/oxalica/rust-overlay/archive/e6679d2ff9136d00b3a7168d2bf1dff9e84c5758.tar.gz");
|
2023-05-05 21:46:13 +00:00
|
|
|
|
|
|
|
rust-nightly =
|
|
|
|
pkgs.rust-bin.selectLatestNightlyWith (toolchain: toolchain.minimal);
|
|
|
|
cargo-udeps = pkgs.writeShellScriptBin "cargo-udeps" ''
|
|
|
|
export RUSTC="${rust-nightly}/bin/rustc";
|
|
|
|
export CARGO="${rust-nightly}/bin/cargo";
|
|
|
|
exec "${pkgs.cargo-udeps}/bin/cargo-udeps" "$@"
|
|
|
|
'';
|
2021-10-11 20:05:24 +00:00
|
|
|
in pkgs.mkShell {
|
2020-11-11 12:53:37 +00:00
|
|
|
buildInputs = [
|
2021-07-20 21:09:18 +00:00
|
|
|
# Rust
|
2023-05-05 21:46:13 +00:00
|
|
|
(pkgs.rust-bin.selectLatestNightlyWith (toolchain: toolchain.rustfmt))
|
2021-07-20 21:09:18 +00:00
|
|
|
pkgs.rust-bin.stable.latest.default
|
|
|
|
|
|
|
|
# Shells
|
2021-09-17 19:59:46 +00:00
|
|
|
pkgs.bash
|
|
|
|
pkgs.dash
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs.elvish
|
|
|
|
pkgs.fish
|
2024-09-12 23:30:42 +00:00
|
|
|
pkgs.ksh
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs.nushell
|
2021-09-17 19:59:46 +00:00
|
|
|
pkgs.powershell
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs.xonsh
|
2021-09-17 19:59:46 +00:00
|
|
|
pkgs.zsh
|
2021-07-20 21:09:18 +00:00
|
|
|
|
2021-09-27 23:22:27 +00:00
|
|
|
# Tools
|
2023-05-05 21:46:13 +00:00
|
|
|
cargo-udeps
|
2023-01-18 05:35:19 +00:00
|
|
|
pkgs.cargo-msrv
|
2022-05-19 11:07:25 +00:00
|
|
|
pkgs.cargo-nextest
|
2023-05-05 21:46:13 +00:00
|
|
|
pkgs.cargo-udeps
|
|
|
|
pkgs.just
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs.mandoc
|
|
|
|
pkgs.nixfmt
|
|
|
|
pkgs.nodePackages.markdownlint-cli
|
|
|
|
pkgs.python3Packages.black
|
|
|
|
pkgs.python3Packages.mypy
|
|
|
|
pkgs.python3Packages.pylint
|
|
|
|
pkgs.shellcheck
|
|
|
|
pkgs.shfmt
|
2023-05-06 08:39:23 +00:00
|
|
|
pkgs.yamlfmt
|
2021-07-20 21:09:18 +00:00
|
|
|
|
|
|
|
# Dependencies
|
|
|
|
pkgs.cacert
|
2021-09-17 19:59:46 +00:00
|
|
|
pkgs.fzf
|
|
|
|
pkgs.git
|
2021-12-05 08:58:31 +00:00
|
|
|
pkgs.libiconv
|
2020-11-11 12:53:37 +00:00
|
|
|
];
|
2021-07-20 21:09:18 +00:00
|
|
|
|
2022-04-25 09:15:46 +00:00
|
|
|
CARGO_TARGET_DIR = "target_nix";
|
2020-11-11 12:53:37 +00:00
|
|
|
}
|