mirror of
				https://github.com/ggml-org/llama.cpp.git
				synced 2025-11-03 09:22:01 +00:00 
			
		
		
		
	* style: format with nixfmt/rfc101-style * build(nix): Package gguf-py * build(nix): Refactor to new scope for gguf-py * build(nix): Exclude gguf-py from devShells * build(nix): Refactor gguf-py derivation to take in exact deps * build(nix): Enable pytestCheckHook and pythonImportsCheck for gguf-py * build(python): Package python scripts with pyproject.toml * chore: Cleanup * dev(nix): Break up python/C devShells * build(python): Relax pytorch version constraint Nix has an older version * chore: Move cmake to nativeBuildInputs for devShell * fmt: Reconcile formatting with rebase * style: nix fmt * cleanup: Remove unncessary __init__.py * chore: Suggestions from review - Filter out non-source files from llama-scripts flake derivation - Clean up unused closure - Remove scripts devShell * revert: Bad changes * dev: Simplify devShells, restore the -extra devShell * build(nix): Add pyyaml for gguf-py * chore: Remove some unused bindings * dev: Add tiktoken to -extra devShells
		
			
				
	
	
		
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ inputs, ... }:
 | 
						|
 | 
						|
{
 | 
						|
  perSystem =
 | 
						|
    {
 | 
						|
      config,
 | 
						|
      lib,
 | 
						|
      system,
 | 
						|
      ...
 | 
						|
    }:
 | 
						|
    {
 | 
						|
      devShells =
 | 
						|
        let
 | 
						|
          pkgs = import inputs.nixpkgs { inherit system; };
 | 
						|
          stdenv = pkgs.stdenv;
 | 
						|
          scripts = config.packages.python-scripts;
 | 
						|
        in
 | 
						|
        lib.pipe (config.packages) [
 | 
						|
          (lib.concatMapAttrs (
 | 
						|
            name: package: {
 | 
						|
              ${name} = pkgs.mkShell {
 | 
						|
                name = "${name}";
 | 
						|
                inputsFrom = [ package ];
 | 
						|
                shellHook = ''
 | 
						|
                  echo "Entering ${name} devShell"
 | 
						|
                '';
 | 
						|
              };
 | 
						|
              "${name}-extra" =
 | 
						|
                if (name == "python-scripts") then
 | 
						|
                  null
 | 
						|
                else
 | 
						|
                  pkgs.mkShell {
 | 
						|
                    name = "${name}-extra";
 | 
						|
                    inputsFrom = [
 | 
						|
                      package
 | 
						|
                      scripts
 | 
						|
                    ];
 | 
						|
                    # Extra packages that *may* be used by some scripts
 | 
						|
                    packages = [
 | 
						|
                        pkgs.python3Packages.tiktoken
 | 
						|
                    ];
 | 
						|
                    shellHook = ''
 | 
						|
                      echo "Entering ${name} devShell"
 | 
						|
                      addToSearchPath "LD_LIBRARY_PATH" "${lib.getLib stdenv.cc.cc}/lib"
 | 
						|
                    '';
 | 
						|
                  };
 | 
						|
            }
 | 
						|
          ))
 | 
						|
          (lib.filterAttrs (name: value: value != null))
 | 
						|
        ];
 | 
						|
    };
 | 
						|
}
 |