40 lines
988 B
Nix
40 lines
988 B
Nix
|
{
|
||
|
inputs = {
|
||
|
fenix.url = "github:nix-community/fenix";
|
||
|
nixpkgs.url = "github:nixos/nixpkgs";
|
||
|
};
|
||
|
|
||
|
outputs = { self, nixpkgs, flake-utils, fenix }:
|
||
|
flake-utils.lib.eachDefaultSystem (system:
|
||
|
let
|
||
|
pkgs = import nixpkgs {
|
||
|
inherit system;
|
||
|
overlays = [ fenix.overlays.default ];
|
||
|
};
|
||
|
|
||
|
toolchain = pkgs.fenix.stable;
|
||
|
in rec {
|
||
|
devShell = pkgs.mkShell {
|
||
|
packages = (with pkgs; [
|
||
|
cargo-deny
|
||
|
cargo-edit
|
||
|
cargo-expand
|
||
|
cargo-flamegraph
|
||
|
cargo-watch
|
||
|
|
||
|
(python310.withPackages
|
||
|
(p: with p; [ jupyterlab pandas seaborn numpy scipy sympy ]))
|
||
|
]) ++ (with toolchain; [
|
||
|
cargo
|
||
|
rustc
|
||
|
clippy
|
||
|
|
||
|
# Get the nightly version of rustfmt so we can wrap comments
|
||
|
pkgs.fenix.default.rustfmt
|
||
|
]);
|
||
|
|
||
|
CARGO_UNSTABLE_SPARSE_REGISTRY = "true";
|
||
|
};
|
||
|
});
|
||
|
}
|