python3Packages.llm-fragments-pypi: init at 0.1.1

This commit is contained in:
Philip Taron 2025-05-08 14:50:54 -07:00
parent 68ec32a1bb
commit c83f08dd2b
4 changed files with 69 additions and 0 deletions

View file

@ -6,6 +6,7 @@
enable-llm-command-r ? false,
enable-llm-deepseek ? false,
enable-llm-fragments-github ? false,
enable-llm-fragments-pypi ? false,
enable-llm-gemini ? false,
enable-llm-grok ? false,
enable-llm-groq ? false,
@ -31,6 +32,7 @@ let
llm-command-r
llm-deepseek
llm-fragments-github
llm-fragments-pypi
llm-gemini
llm-gguf
llm-grok
@ -57,6 +59,7 @@ toPythonApplication (
++ lib.optionals enable-llm-cmd [ llm-command-r ]
++ lib.optionals enable-llm-deepseek [ llm-deepseek ]
++ lib.optionals enable-llm-fragments-github [ llm-fragments-github ]
++ lib.optionals enable-llm-fragments-pypi [ llm-fragments-pypi ]
++ lib.optionals enable-llm-gemini [ llm-gemini ]
++ lib.optionals enable-llm-gguf [ llm-gguf ]
++ lib.optionals enable-llm-grok [ llm-grok ]

View file

@ -0,0 +1,42 @@
{
lib,
callPackage,
buildPythonPackage,
fetchFromGitHub,
hatchling,
llm,
httpx,
}:
buildPythonPackage rec {
pname = "llm-fragments-pypi";
version = "0.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "samueldg";
repo = "llm-fragments-pypi";
tag = version;
hash = "sha256-1XqAmuZ1WMHD6JbLbLsK9K4Uf3FvvKJD4mn1G2J/3C8=";
};
build-system = [
hatchling
llm
];
dependencies = [ httpx ];
pythonImportsCheck = [ "llm_fragments_pypi" ];
passthru.tests = {
llm-plugin = callPackage ./tests/llm-plugin.nix { };
};
meta = {
description = "LLM fragments plugin for PyPI packages metadata";
homepage = "https://github.com/samueldg/llm-fragments-pypi";
changelog = "https://github.com/samueldg/llm-fragments-pypi/releases/tag/${version}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ philiptaron ];
};
}

View file

@ -0,0 +1,22 @@
{
runCommand,
python,
yq,
}:
let
venv = python.withPackages (ps: [
ps.llm
ps.llm-fragments-pypi
]);
in
runCommand "llm-fragments-pypi-test-llm-plugin"
{
nativeBuildInputs = [
venv
yq
];
}
''
llm plugins | yq --exit-status 'any(.name == "llm-fragments-pypi")'
touch "$out"
''

View file

@ -8304,6 +8304,8 @@ self: super: with self; {
llm-fragments-github = callPackage ../development/python-modules/llm-fragments-github { };
llm-fragments-pypi = callPackage ../development/python-modules/llm-fragments-pypi { };
llm-gemini = callPackage ../development/python-modules/llm-gemini { };
llm-gguf = callPackage ../development/python-modules/llm-gguf { };