{ description = "Flake for the servicepoint library."; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11"; }; outputs = inputs@{ self, nixpkgs, }: let lib = nixpkgs.lib; supported-systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin" ]; forAllSystems = f: lib.genAttrs supported-systems ( system: f rec { pkgs = nixpkgs.legacyPackages.${system}; inherit system; } ); in { devShells = forAllSystems ( { pkgs, system }: { default = pkgs.mkShell rec { buildInputs = with pkgs; [ xe xz #libgcc #glibc pkgsStatic.musl # libunwind ]; nativeBuildInputs = with pkgs; [ (pkgs.symlinkJoin { name = "rust-toolchain"; paths = with pkgs; [ #rustc #cargo #rustPlatform.rustcSrc #rustfmt #clippy cargo-expand cargo-tarpaulin rustup ]; }) gcc gdb pkgsStatic.gcc gnumake pkg-config ]; #RUST_SRC_PATH = "${pkgs.rust.packages.stable.rustPlatform.rustLibSrc}"; CARGO = "rustup run nightly cargo"; }; } ); formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-rfc-style); }; }