{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs"; }; outputs = { self, nixpkgs, }: let forEachSystem = fn: nixpkgs.lib.genAttrs nixpkgs.lib.platforms.linux ( system: fn system (nixpkgs.legacyPackages.${system}) ); in { devShells = forEachSystem ( system: pkgs: { default = pkgs.mkShell { nativeBuildInputs = with pkgs; [ cargo rustc pkgconf ]; buildInputs = with pkgs; [ libGL xkeyboard_config libgbm pango udev libinput shaderc libglvnd vulkan-loader ]; SHADERC_LIB_DIR = "${pkgs.lib.getLib pkgs.shaderc}/lib"; LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath ( with pkgs; [ libglvnd vulkan-loader ] ); }; } ); }; }