fix(serena): Update to 1.1.1

This commit is contained in:
2026-04-13 11:49:42 +02:00
parent b8c9db6254
commit 7f6a99a17c
3 changed files with 57 additions and 26 deletions
+18 -17
View File
@@ -3,12 +3,12 @@
python3Packages,
fetchFromGitHub,
pyright,
fortls,
}:
# TODO: We can just get this from nixpkgs when merged: https://github.com/NixOS/nixpkgs/pull/506300
python3Packages.buildPythonApplication (finalAttrs: {
pname = "serena";
version = "0.1.4";
version = "1.1.1";
pyproject = true;
disabled = python3Packages.pythonOlder "3.11";
@@ -17,33 +17,41 @@ python3Packages.buildPythonApplication (finalAttrs: {
owner = "oraios";
repo = "serena";
tag = "v${finalAttrs.version}";
hash = "sha256-oj5iaQZa9gKjjaqq/DDT0j5UqVbPjWEztSuaOH24chI=";
hash = "sha256-3MPlJvXt83C7dBxYrCe1or3UYWMZ1poSg3PBmVXj0mA=";
};
postPatch = ''
# Remove the deprecated dotenv stub package (serena uses python-dotenv)
substituteInPlace pyproject.toml \
--replace-fail '"dotenv>=0.9.9",' ""
--replace-fail '"dotenv==0.9.9",' ""
# Remove pyright from Python dependencies and make it available at runtime
# instead
substituteInPlace pyproject.toml \
--replace-fail '"pyright>=1.1.396,<2",' ""
--replace-fail '"pyright==1.1.403",' ""
# Remove fortls from Python dependencies and make it available at runtime instead
substituteInPlace pyproject.toml \
--replace-fail '"fortls==3.2.2",' ""
# Remove oraios-pywebview (custom fork, not in nixpkgs; only needed for GUI features)
substituteInPlace pyproject.toml \
--replace-fail '"oraios-pywebview==6.2",' ""
'';
build-system = [ python3Packages.hatchling ];
pythonRelaxDeps = [
"mcp"
];
pythonRelaxDeps = true;
makeWrapperArgs = [
"--prefix PATH : ${lib.makeBinPath [ pyright ]}"
"--prefix PATH : ${lib.makeBinPath [ pyright fortls ]}"
];
dependencies = with python3Packages; [
anthropic
docstring-parser
beautifulsoup4
cryptography
flask
jinja2
joblib
@@ -52,6 +60,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
pathspec
psutil
pydantic
pystray
python-dotenv
pyyaml
requests
@@ -67,12 +76,4 @@ python3Packages.buildPythonApplication (finalAttrs: {
};
pythonImportsCheck = [ "serena" ];
meta = {
description = "Coding agent toolkit providing semantic code operations for LLMs via MCP";
homepage = "https://github.com/oraios/serena";
changelog = "https://github.com/oraios/serena/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ jpds ];
};
})