From 364a4d0d44b67261462dd162f31f7fb2b93bf271 Mon Sep 17 00:00:00 2001 From: emaryn Date: Sat, 7 Jun 2025 00:36:43 +0800 Subject: [PATCH] newelle: init at 0.9.7 --- pkgs/by-name/ne/newelle/package.nix | 104 ++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 pkgs/by-name/ne/newelle/package.nix diff --git a/pkgs/by-name/ne/newelle/package.nix b/pkgs/by-name/ne/newelle/package.nix new file mode 100644 index 000000000000..e226ca62f03b --- /dev/null +++ b/pkgs/by-name/ne/newelle/package.nix @@ -0,0 +1,104 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + meson, + ninja, + pkg-config, + wrapGAppsHook4, + gobject-introspection, + desktop-file-utils, + libadwaita, + vte-gtk4, + gsettings-desktop-schemas, + gtksourceview5, + lsb-release, + bash, + ffmpeg, + nix-update-script, +}: + +python3Packages.buildPythonApplication rec { + pname = "newelle"; + version = "0.9.7"; + pyproject = false; # uses meson + + src = fetchFromGitHub { + owner = "qwersyk"; + repo = "Newelle"; + tag = version; + hash = "sha256-h0dWjnUqWcPdSbR60HF2KvQxUyYeR3qHf2GMHt/kSm0="; + }; + + postPatch = '' + substituteInPlace src/utility/pip.py \ + --replace-fail "# Manage pip path locking" "return None" + ''; + + nativeBuildInputs = [ + meson + ninja + gobject-introspection + wrapGAppsHook4 + desktop-file-utils + pkg-config + ]; + + buildInputs = [ + libadwaita + vte-gtk4 + gsettings-desktop-schemas + gtksourceview5 + ]; + + dependencies = with python3Packages; [ + pygobject3 + libxml2 + pydub + gtts + speechrecognition + numpy + matplotlib + pylatexenc + pyaudio + pip-install-test + newspaper3k + tiktoken + openai + ollama + llama-index-core + llama-index-readers-file + google-genai + anthropic + ]; + + strictDeps = true; + + postInstallCheck = '' + mesonCheckPhase + ''; + + dontWrapGApps = true; + + makeWrapperArgs = [ + "\${gappsWrapperArgs[@]}" + "--prefix PATH : ${ + lib.makeBinPath [ + lsb-release + bash + ffmpeg + ] + }" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + homepage = "https://github.com/qwersyk/Newelle"; + description = "Ultimate Virtual Assistant"; + mainProgram = "newelle"; + license = lib.licenses.gpl3Plus; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ emaryn ]; + }; +}