{ inputs, ... }: { perSystem = { config, system, lib, pkgsCuda, ... }: { legacyPackages = let caps.llamaPackagesXavier = "7.2"; caps.llamaPackagesOrin = "8.7"; caps.llamaPackagesTX2 = "6.2"; caps.llamaPackagesNano = "5.3"; pkgsFor = cap: import inputs.nixpkgs { inherit system; config = { cudaSupport = true; cudaCapabilities = [ cap ]; cudaEnableForwardCompat = false; inherit (pkgsCuda.config) allowUnfreePredicate; }; }; in builtins.mapAttrs (name: cap: (pkgsFor cap).callPackage ./scope.nix { }) caps; packages = lib.optionalAttrs (system == "aarch64-linux") { jetson-xavier = config.legacyPackages.llamaPackagesXavier.llama-cpp; jetson-orin = config.legacyPackages.llamaPackagesOrin.llama-cpp; jetson-nano = config.legacyPackages.llamaPackagesNano.llama-cpp; }; }; }