fix(serena): Update to 1.1.1
This commit is contained in:
+7
-6
@@ -1,11 +1,12 @@
|
|||||||
let
|
{
|
||||||
sources = import ./npins;
|
sources ? import ./npins,
|
||||||
system = builtins.currentSystem;
|
system ? builtins.currentSystem,
|
||||||
pkgs = import sources.nixpkgs {
|
pkgs ? import sources.nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
},
|
||||||
|
}:
|
||||||
|
let
|
||||||
claudeCode = pkgs.callPackage "${sources.claude-code-nix}/package.nix" { };
|
claudeCode = pkgs.callPackage "${sources.claude-code-nix}/package.nix" { };
|
||||||
serena = pkgs.callPackage ./pkgs/serena/package.nix { };
|
serena = pkgs.callPackage ./pkgs/serena/package.nix { };
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,34 @@
|
|||||||
{
|
{
|
||||||
description = "claude-vm";
|
outputs =
|
||||||
|
{ self }:
|
||||||
|
let
|
||||||
|
sources = import ./npins;
|
||||||
|
|
||||||
outputs = { self }: import ./default.nix;
|
systems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
"x86_64-darwin"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
|
||||||
|
forAllSystems =
|
||||||
|
f:
|
||||||
|
builtins.listToAttrs (
|
||||||
|
map (system: {
|
||||||
|
name = system;
|
||||||
|
value = f system;
|
||||||
|
}) systems
|
||||||
|
);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
packages = forAllSystems (
|
||||||
|
system:
|
||||||
|
let
|
||||||
|
pkgs = import sources.nixpkgs { inherit system; };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
default = (import ./default.nix { inherit system; }).claude-vm;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
+18
-17
@@ -3,12 +3,12 @@
|
|||||||
python3Packages,
|
python3Packages,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
pyright,
|
pyright,
|
||||||
|
fortls,
|
||||||
}:
|
}:
|
||||||
# TODO: We can just get this from nixpkgs when merged: https://github.com/NixOS/nixpkgs/pull/506300
|
# TODO: We can just get this from nixpkgs when merged: https://github.com/NixOS/nixpkgs/pull/506300
|
||||||
|
|
||||||
python3Packages.buildPythonApplication (finalAttrs: {
|
python3Packages.buildPythonApplication (finalAttrs: {
|
||||||
pname = "serena";
|
pname = "serena";
|
||||||
version = "0.1.4";
|
version = "1.1.1";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = python3Packages.pythonOlder "3.11";
|
disabled = python3Packages.pythonOlder "3.11";
|
||||||
@@ -17,33 +17,41 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
|||||||
owner = "oraios";
|
owner = "oraios";
|
||||||
repo = "serena";
|
repo = "serena";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-oj5iaQZa9gKjjaqq/DDT0j5UqVbPjWEztSuaOH24chI=";
|
hash = "sha256-3MPlJvXt83C7dBxYrCe1or3UYWMZ1poSg3PBmVXj0mA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# Remove the deprecated dotenv stub package (serena uses python-dotenv)
|
# Remove the deprecated dotenv stub package (serena uses python-dotenv)
|
||||||
substituteInPlace pyproject.toml \
|
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
|
# Remove pyright from Python dependencies and make it available at runtime
|
||||||
# instead
|
# instead
|
||||||
substituteInPlace pyproject.toml \
|
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 ];
|
build-system = [ python3Packages.hatchling ];
|
||||||
|
|
||||||
pythonRelaxDeps = [
|
pythonRelaxDeps = true;
|
||||||
"mcp"
|
|
||||||
];
|
|
||||||
|
|
||||||
makeWrapperArgs = [
|
makeWrapperArgs = [
|
||||||
"--prefix PATH : ${lib.makeBinPath [ pyright ]}"
|
"--prefix PATH : ${lib.makeBinPath [ pyright fortls ]}"
|
||||||
];
|
];
|
||||||
|
|
||||||
dependencies = with python3Packages; [
|
dependencies = with python3Packages; [
|
||||||
anthropic
|
anthropic
|
||||||
docstring-parser
|
docstring-parser
|
||||||
|
beautifulsoup4
|
||||||
|
cryptography
|
||||||
flask
|
flask
|
||||||
jinja2
|
jinja2
|
||||||
joblib
|
joblib
|
||||||
@@ -52,6 +60,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
|||||||
pathspec
|
pathspec
|
||||||
psutil
|
psutil
|
||||||
pydantic
|
pydantic
|
||||||
|
pystray
|
||||||
python-dotenv
|
python-dotenv
|
||||||
pyyaml
|
pyyaml
|
||||||
requests
|
requests
|
||||||
@@ -67,12 +76,4 @@ python3Packages.buildPythonApplication (finalAttrs: {
|
|||||||
};
|
};
|
||||||
|
|
||||||
pythonImportsCheck = [ "serena" ];
|
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 ];
|
|
||||||
};
|
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user