{ pkgs, ... }: # hipEngine >= 0.5.0 requires llguidance >= 1.8,<2; nixpkgs only provides # 1.7.x. Override nixpkgs' llguidance to 1.8.0 and hand the resulting # interpreter/package set to the package. let python = pkgs.python3.override { packageOverrides = self: super: { llguidance = super.llguidance.overridePythonAttrs (old: rec { version = "1.8.0"; src = pkgs.fetchFromGitHub { owner = "guidance-ai"; repo = "llguidance"; tag = "v${version}"; hash = "sha256-/rHTefKTq5ch38NqbcLYTXBJwkW+WzG5OFvignDIie4="; }; cargoDeps = pkgs.rustPlatform.fetchCargoVendor { pname = "llguidance"; inherit src version; hash = "sha256-aa9R+6xgFVGAD3snHbkPRF5jMYwC3DFNjXcUtaOzDbU="; }; }); }; }; in python.pkgs.callPackage ./package.nix { python3Packages = python.pkgs; }