mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-03 02:11:48 +00:00
Some checks are pending
Deploy Site / deploy-vercel (push) Waiting to run
Deploy Site / deploy-docs (push) Waiting to run
Docker Build and Publish / build-and-push (push) Waiting to run
Nix Lockfile Fix / auto-fix-main (push) Waiting to run
Nix Lockfile Fix / fix (push) Waiting to run
Nix / nix (macos-latest) (push) Waiting to run
Nix / nix (ubuntu-latest) (push) Waiting to run
Tests / test (push) Waiting to run
Tests / e2e (push) Waiting to run
check_for_updates() looked at __file__.parent.parent for a .git dir to diff against origin/main. A nix-built hermes lives in /nix/store with no .git there, so the check fell through to whatever editable-install dev checkout last populated ~/.hermes/.update_check, producing stale "X commits behind" warnings right after a fresh `nix run --refresh`. Embed the locked flake rev into the wrapper as HERMES_REVISION (only on clean builds — dirty refs don't represent any upstream commit). When set, banner.py compares it to upstream main via `git ls-remote` instead of inspecting a local checkout, and the cache key includes the rev so nix updates invalidate immediately. Without local history we can't count commits, so the message is a plain "update available" with no suggested command — nix users may install via `nix run`, profile, system flake, or home-manager, and we don't know which. Also bump web/package-lock.json npmDepsHash via `nix run .#fix-lockfiles`.
26 lines
830 B
Nix
26 lines
830 B
Nix
# nix/packages.nix — Hermes Agent package built with uv2nix
|
|
{ inputs, ... }:
|
|
{
|
|
perSystem =
|
|
{ pkgs, inputs', ... }:
|
|
let
|
|
hermesAgent = pkgs.callPackage ./hermes-agent.nix {
|
|
inherit (inputs) uv2nix pyproject-nix pyproject-build-systems;
|
|
npm-lockfile-fix = inputs'.npm-lockfile-fix.packages.default;
|
|
# Only embed clean revs — dirtyRev doesn't represent any upstream
|
|
# commit, so comparing it would always claim "update available".
|
|
rev = inputs.self.rev or null;
|
|
};
|
|
in
|
|
{
|
|
packages = {
|
|
default = hermesAgent;
|
|
tui = hermesAgent.hermesTui;
|
|
web = hermesAgent.hermesWeb;
|
|
|
|
fix-lockfiles = hermesAgent.hermesNpmLib.mkFixLockfiles {
|
|
packages = [ hermesAgent.hermesTui hermesAgent.hermesWeb ];
|
|
};
|
|
};
|
|
};
|
|
}
|