diff options
Diffstat (limited to 'pkgs/development/python-modules/open-interpreter')
-rw-r--r-- | pkgs/development/python-modules/open-interpreter/default.nix | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/open-interpreter/default.nix b/pkgs/development/python-modules/open-interpreter/default.nix new file mode 100644 index 0000000000000..2f256aa327011 --- /dev/null +++ b/pkgs/development/python-modules/open-interpreter/default.nix @@ -0,0 +1,94 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, pythonOlder +, pythonRelaxDepsHook +, poetry-core + +, appdirs +, astor +, inquirer +, litellm +, pyyaml +, rich +, six +, tiktoken +, tokentrim +, wget +, psutil +, html2image +, ipykernel +, jupyter-client +, matplotlib +, toml +, posthog +, openai +, setuptools +}: + +buildPythonPackage rec { + pname = "open-interpreter"; + version = "0.2.0"; + pyproject = true; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "KillianLucas"; + repo = pname; + rev = "v${version}"; + hash = "sha256-XeJ6cADtyXtqoTXwYJu+i9d3NYbJCLpYOeZYmdImtwI="; + }; + + # Remove unused dependency + postPatch = '' + substituteInPlace pyproject.toml --replace 'git-python = "^1.0.3"' "" + ''; + + pythonRelaxDeps = [ + "tiktoken" + ]; + + nativeBuildInputs = [ + poetry-core + pythonRelaxDepsHook + ]; + + propagatedBuildInputs = [ + appdirs + astor + inquirer + litellm + pyyaml + rich + six + tiktoken + tokentrim + wget + psutil + html2image + ipykernel + jupyter-client + matplotlib + toml + posthog + openai + + # Not explicitly in pyproject.toml but required due to use of `pkgs_resources` + setuptools + ]; + + pythonImportsCheck = [ "interpreter" ]; + + # Most tests required network access + doCheck = false; + + meta = with lib; { + description = "OpenAI's Code Interpreter in your terminal, running locally"; + homepage = "https://github.com/KillianLucas/open-interpreter"; + license = licenses.mit; + changelog = "https://github.com/KillianLucas/open-interpreter/releases/tag/v${version}"; + maintainers = with maintainers; [ happysalada ]; + mainProgram = "interpreter"; + }; +} |