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:
@@ -1,3 +1,4 @@
|
||||
{"_type":"issue","id":"nix-overlay-67e","title":"Add traycer package","description":"Add new package for traycer from https://github.com/traycerai/traycer. Steps: research repo build system, create packages/traycer/, stage with git add, test nix build, update README.","status":"in_progress","priority":2,"issue_type":"task","assignee":"Alexander Miroshnichenko","owner":"alex@millerson.name","created_at":"2026-08-07T08:59:25Z","created_by":"Alexander Miroshnichenko","updated_at":"2026-08-07T09:00:29Z","started_at":"2026-08-07T09:00:29Z","dependency_count":0,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"nix-overlay-2gf","title":"Update all packages to latest versions","description":"## Why\\nUser request: update every package in the overlay to its latest upstream version.\\n\\n## What\\nBump version + src hash (and cargoHash for Rust) in each packages/\u003cname\u003e/package.nix, update README table if needed, verify builds.\\n\\n## Acceptance\\n- Every package builds with nix build .#\u003cname\u003e\\n- README reflects new versions\\n- Changes committed and pushed","status":"in_progress","priority":2,"issue_type":"task","assignee":"Alexander Miroshnichenko","owner":"alex@millerson.name","created_at":"2026-08-07T07:22:50Z","created_by":"Alexander Miroshnichenko","updated_at":"2026-08-07T07:22:55Z","started_at":"2026-08-07T07:22:55Z","dependency_count":0,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"nix-overlay-9xs","title":"Update all packages to latest versions","description":"Update every package in packages/ to its latest upstream version, refresh source hashes and cargoHashes, verify builds, update README.","status":"in_progress","priority":2,"issue_type":"task","assignee":"Alexander Miroshnichenko","owner":"alex@millerson.name","created_at":"2026-08-07T05:45:16Z","created_by":"Alexander Miroshnichenko","updated_at":"2026-08-07T05:45:22Z","started_at":"2026-08-07T05:45:22Z","dependency_count":0,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"nix-overlay-f8c","title":"Add nftablesbuilder package","description":"Package NftablesBuilder (github.com/AiseBouma/NftablesBuilder) web interface to manage nftables. Upstream source is incomplete (missing settings crate, no GUI build tooling, no Cargo.lock) so: patch in authored settings crate (schema from release artifacts), build Rust workspace from pinned commit, reuse built GUI assets from hash-pinned release tarball.","status":"closed","priority":2,"issue_type":"task","assignee":"Alexander Miroshnichenko","owner":"alex@millerson.name","created_at":"2026-08-07T04:58:22Z","created_by":"Alexander Miroshnichenko","updated_at":"2026-08-07T05:38:40Z","started_at":"2026-08-07T04:58:25Z","closed_at":"2026-08-07T05:38:40Z","close_reason":"Package added, builds green, committed","dependency_count":0,"dependent_count":0,"comment_count":0}
|
||||
|
||||
@@ -29,6 +29,7 @@ A custom Nix overlay and flake providing additional packages not found in upstre
|
||||
| `omniroute` | Unified AI router with 160+ providers, auto fallback, MCP/A2A, OpenAI-compatible APIs | AI LLM Gateway |
|
||||
| `relay-free-llm` | RESTful API to route user prompts to various AI model providers with automatic failover and intent-based routing | AI LLM Gateway |
|
||||
| `stakpak` | DevOps AI agent that generates infrastructure code, debugs Kubernetes, configures CI/CD, and automates deployments | AI Agents |
|
||||
| `traycer` | Open-source AI orchestration app for agentic coding | AI Coding Agents |
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -155,7 +156,8 @@ nix-overlay/
|
||||
│ ├── radar/ # Kubernetes UI (topology, timeline, Helm, GitOps)
|
||||
│ ├── relay-free-llm/ # AI model provider routing gateway
|
||||
│ ├── skillsmcp/ # MCP server for Agent Skills
|
||||
│ └── stakpak/ # DevOps AI agent for infrastructure automation
|
||||
│ ├── stakpak/ # DevOps AI agent for infrastructure automation
|
||||
│ └── traycer/ # AI orchestration desktop app (agentic coding)
|
||||
└── README.md
|
||||
```
|
||||
|
||||
|
||||
1
packages/traycer/default.nix
Normal file
1
packages/traycer/default.nix
Normal file
@@ -0,0 +1 @@
|
||||
{ pkgs, ... }: pkgs.callPackage ./package.nix { }
|
||||
56
packages/traycer/package.nix
Normal file
56
packages/traycer/package.nix
Normal 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 ];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user