{
description = "Cinema dev environment";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
rust-overlay.url = "github:oxalica/rust-overlay";
};
outputs =
{
nixpkgs,
flake-utils,
rust-overlay,
...
}:
flake-utils.lib.eachDefaultSystem (
system:
let
overlays = [ (import rust-overlay) ];
pkgs = import nixpkgs { inherit system overlays; };
in
{
devShells.default =
with pkgs;
let
rust = rust-bin.stable.latest.default.override {
extensions = [
"rust-src"
];
};
in
mkShell {
buildInputs = [
# System
openssl
pkg-config
# Tools
direnv # Environment manager
just # Tasks runner
hurl # HTTP client
# Rust
rust
# Cargo
cargo-watch
cargo-nextest
bacon
];
env.LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath [
pkgs.stdenv.cc.cc.lib
pkgs.libz
];
};
}
);
}