{ description = "invoiceninjars: a Rust client for the Invoice Ninja v5 API"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; rust-overlay.url = "github:oxalica/rust-overlay"; rust-overlay.inputs.nixpkgs.follows = "nixpkgs"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, rust-overlay, flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; overlays = [ rust-overlay.overlays.default ]; }; rustToolchain = pkgs.rust-bin.stable.latest.default.override { extensions = [ "rust-src" "rust-analyzer" "clippy" "rustfmt" ]; }; in { devShells.default = pkgs.mkShell { packages = [ rustToolchain pkgs.pkg-config pkgs.openssl ]; RUST_SRC_PATH = "${rustToolchain}/lib/rustlib/src/rust/library"; }; }); }