feat: add traycer desktop package
Some checks failed
CI / check (push) Has been cancelled

Traycer is an open-source AI orchestration desktop app (Electron).
Packaged from the upstream AppImage via appimageTools.wrapType2,
matching the existing loop package pattern.
This commit is contained in:
2026-08-07 12:15:21 +03:00
parent eba219c8e1
commit 3d3213d61b
4 changed files with 61 additions and 1 deletions

View File

@@ -0,0 +1,56 @@
{
lib,
appimageTools,
fetchurl,
}:
let
version = "1.1.10";
src = fetchurl {
url = "https://github.com/traycerai/traycer/releases/download/desktop-v${version}/traycer-desktop-linux-x86_64.AppImage";
hash = "sha256-+aSlqX1RCpbKuV0j7xEBMQDAq/IzpvCC5XZ/psQJcjY=";
};
appimageContents = appimageTools.extractType2 {
pname = "traycer";
inherit version src;
};
in
appimageTools.wrapType2 {
pname = "traycer";
inherit version src;
extraPkgs = pkgsWith: [
pkgsWith.gtk3
pkgsWith.glib
];
extraInstallCommands = ''
mkdir -p $out/share/applications
install -m 444 ${appimageContents}/traycer-desktop.desktop $out/share/applications/traycer.desktop
substituteInPlace $out/share/applications/traycer.desktop \
--replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=traycer --no-sandbox %U'
mkdir -p $out/share/icons/hicolor
cp -r ${appimageContents}/usr/share/icons/hicolor/* $out/share/icons/hicolor/
'';
passthru = {
category = "AI Coding Agents";
updateScript = [
"nix-update"
"--flake"
".#traycer"
];
};
meta = {
description = "Open-source AI orchestration app for agentic coding";
homepage = "https://github.com/traycerai/traycer";
license = lib.licenses.mit;
maintainers = [ ];
platforms = [ "x86_64-linux" ];
mainProgram = "traycer";
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
};
}