{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; fenix.url = "github:nix-community/fenix"; fenix.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { nixpkgs, fenix, ... }: let forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed; in { devShells = forAllSystems (system: let pkgs = import nixpkgs { inherit system; }; in { default = pkgs.mkShell { packages = with pkgs; [ zsh (fenix.packages.${system}.complete.withComponents [ "cargo" "clippy" "rust-src" "rustc" "rustfmt" "rust-analyzer" "miri" ]) llvm_18 libffi libxml2 ncurses gdb valgrind ]; LLVM_SYS_181_PREFIX = toString pkgs.llvm_18.dev; LD_LIBRARY_PATH = let libs = with pkgs; [ llvm_18.lib stdenv.cc.cc.lib libffi libxml2 ncurses libz ]; in builtins.concatStringsSep ":" (map (lib: "${lib}/lib") libs) ; }; } ); }; }