49 lines
1.3 KiB
Nix
49 lines
1.3 KiB
Nix
{
|
|
appimageTools,
|
|
fetchurl,
|
|
lib,
|
|
nodejs,
|
|
nodePackages,
|
|
uv,
|
|
python3,
|
|
makeWrapper,
|
|
}: let
|
|
pname = "eigent";
|
|
version = "0.0.89";
|
|
src = fetchurl {
|
|
url = "https://github.com/eigent-ai/eigent/releases/download/v${version}/Eigent-${version}.AppImage";
|
|
hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
|
|
};
|
|
appimageContents = appimageTools.extractType2 {inherit pname version src;};
|
|
in
|
|
appimageTools.wrapType2 {
|
|
inherit pname version src;
|
|
|
|
nativeBuildInputs = [makeWrapper];
|
|
|
|
extraPkgs = pkgs: [
|
|
nodejs
|
|
nodePackages.npm
|
|
uv
|
|
python3
|
|
];
|
|
|
|
extraInstallCommands = ''
|
|
install -m 444 -D ${appimageContents}/Eigent.desktop -t $out/share/applications
|
|
substituteInPlace $out/share/applications/Eigent.desktop \
|
|
--replace 'Exec=AppRun' 'Exec=${pname}'
|
|
install -m 444 -D ${appimageContents}/Eigent.png \
|
|
$out/share/icons/hicolor/256x256/apps/Eigent.png
|
|
wrapProgram $out/bin/${pname} \
|
|
--prefix PATH : ${lib.makeBinPath [nodejs nodePackages.npm uv python3]}
|
|
'';
|
|
|
|
meta = {
|
|
description = "Open source AI cowork desktop app — local alternative to Claude Cowork";
|
|
homepage = "https://github.com/eigent-ai/eigent";
|
|
license = lib.licenses.asl20;
|
|
platforms = lib.platforms.linux;
|
|
mainProgram = "eigent";
|
|
};
|
|
}
|