Files
millerson-overlay.nix/packages/haivemind/package.nix
Alexander Miroshnichenko 2c5e64039a fix(haivemind): start engine after MainScreen mounts to avoid NoMatches on #chat-log
Upstream haivemind_tui.py started the engine synchronously in HaivemindApp.on_mount while MainScreen mounts asynchronously, causing ProbeStart handler to query #chat-log on the default screen (NoMatches). Move the start_run trigger into MainScreen.on_mount so it runs only once the screen is active.
2026-08-20 10:33:57 +03:00

55 lines
1.1 KiB
Nix

{
lib,
fetchFromGitHub,
python3Packages,
}:
python3Packages.buildPythonApplication rec {
pname = "haivemind";
version = "0.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "dev-boz";
repo = "haivemind";
rev = "ce4a0437d41f57638b71a17e2ff3af524d5a1b6e";
hash = "sha256-x7NM2wHwi11i07jHTL9NgYJkzzlP+tOmJy027itRtWs=";
};
build-system = with python3Packages; [
setuptools
];
dependencies = with python3Packages; [
textual
];
patches = [ ./fix-chat-log-race.patch ];
doCheck = false;
pythonImportsCheck = [
"haivemind"
"haivemind_tui"
"haivemind_curses"
];
passthru = {
category = "AI Coding Agents";
updateScript = [
"nix-update"
"--flake"
".#haivemind"
"--version=branch=main"
];
};
meta = with lib; {
description = "Multi-model AI consensus, aggregation, and fusion runner for popular AI CLIs";
homepage = "https://github.com/dev-boz/haivemind";
changelog = "https://github.com/dev-boz/haivemind/commits/main";
license = licenses.mit;
mainProgram = "haivemind";
platforms = platforms.all;
};
}