Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 826569ed98 | |||
| af08084692 |
+1
-1
@@ -1,3 +1,3 @@
|
||||
{"_type":"issue","id":"home-profile-restructuring-edz","title":"Create copy-hermes-skills systemd service","status":"closed","priority":1,"issue_type":"task","assignee":"m3tm3re","owner":"p@m3ta.dev","estimated_minutes":1,"created_at":"2026-04-26T12:30:10Z","created_by":"m3tm3re","updated_at":"2026-04-26T12:44:42Z","started_at":"2026-04-26T12:36:30Z","closed_at":"2026-04-26T12:44:42Z","close_reason":"Created systemd service in hosts/m3-hermes/services/hermes-agent.nix - copies skills to /var/lib/hermes/.agents/skills before hermes-agent starts","labels":["hermes-agent","nixos"],"dependencies":[{"issue_id":"home-profile-restructuring-edz","depends_on_id":"home-profile-restructuring-ycz","type":"blocks","created_at":"2026-04-26T14:30:57Z","created_by":"m3tm3re","metadata":"{}"}],"dependency_count":1,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"home-profile-restructuring-ycz","title":"Build hermes-agent skills using mkSkills:w","status":"closed","priority":1,"issue_type":"task","assignee":"m3tm3re","owner":"p@m3ta.dev","estimated_minutes":2,"created_at":"2026-04-26T12:30:09Z","created_by":"m3tm3re","updated_at":"2026-04-26T12:35:15Z","started_at":"2026-04-26T12:31:35Z","closed_at":"2026-04-26T12:35:15Z","close_reason":"Added inputs to module signature and defined hermesSkills via inputs.agents.lib.mkSkills with basecamp, anthropic, and kestra external skills. Verified with nixos-rebuild dry-run --flake .#m3-hermes (no errors).","labels":["hermes-agent","nixos"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"home-profile-restructuring-ycz","title":"Build hermes-agent skills using mkOpencodeSkills","status":"closed","priority":1,"issue_type":"task","assignee":"m3tm3re","owner":"p@m3ta.dev","estimated_minutes":2,"created_at":"2026-04-26T12:30:09Z","created_by":"m3tm3re","updated_at":"2026-04-26T12:35:15Z","started_at":"2026-04-26T12:31:35Z","closed_at":"2026-04-26T12:35:15Z","close_reason":"Added inputs to module signature and defined hermesSkills via inputs.agents.lib.mkOpencodeSkills with basecamp, anthropic, and kestra external skills. Verified with nixos-rebuild dry-run --flake .#m3-hermes (no errors).","labels":["hermes-agent","nixos"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"home-profile-restructuring-cxa","title":"Verify skills available at /var/lib/hermes/.agents/skills","status":"closed","priority":2,"issue_type":"task","assignee":"m3tm3re","owner":"p@m3ta.dev","estimated_minutes":1,"created_at":"2026-04-26T12:30:10Z","created_by":"m3tm3re","updated_at":"2026-04-26T12:50:58Z","started_at":"2026-04-26T12:38:15Z","closed_at":"2026-04-26T12:50:58Z","close_reason":"Manually verified - skills are present at /var/lib/hermes/.agents/skills on m3-hermes","labels":["hermes-agent","testing"],"dependencies":[{"issue_id":"home-profile-restructuring-cxa","depends_on_id":"home-profile-restructuring-edz","type":"blocks","created_at":"2026-04-26T14:30:57Z","created_by":"m3tm3re","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
|
||||
|
||||
Generated
+7
-7
@@ -448,11 +448,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1778248595,
|
||||
"narHash": "sha256-dhFgEjoeJMYN/7OY6xfxS799YB4IjbbYXTjyGIJyLpc=",
|
||||
"lastModified": 1779113444,
|
||||
"narHash": "sha256-/L61sT1PIKmGWIQpIh0uJGH/ANvcsf6y4alxtb9kelg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "fdb2ccba9d5e1238d32e0c4a3ec1a277efa80c1d",
|
||||
"rev": "74f170c62d57f90e656841f1f699e6bdf40f0a24",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -602,11 +602,11 @@
|
||||
"nur": "nur"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1778516940,
|
||||
"narHash": "sha256-BhC9zIEmXoWY0TK0achwUueKhzUA5sja6bjonzrEPxo=",
|
||||
"lastModified": 1778520138,
|
||||
"narHash": "sha256-X58c8BUIshyUnp6XEKumFUYXqMFnrDTj+aGuGIbKwxg=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "7894a89843559cb1597bf0f32e0579f37052f497",
|
||||
"revCount": 28,
|
||||
"rev": "a87d9510bd84f51bf93970730b8688ab7221bbdd",
|
||||
"revCount": 30,
|
||||
"type": "git",
|
||||
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home"
|
||||
},
|
||||
|
||||
+24
-20
@@ -36,35 +36,39 @@ with lib; {
|
||||
};
|
||||
}
|
||||
|
||||
# ── Hyprland monitor layout ──
|
||||
# ── Hyprland monitor layout & host-specific rules ──
|
||||
(mkIf config.desktop.wm.hyprland.enable {
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
settings = {
|
||||
exec-once = ["tuxedo-backlight"];
|
||||
# Laptop internal + external HDMI
|
||||
monitor = [
|
||||
"eDP-1,preferred,0x0,1.25"
|
||||
"HDMI-A-1,1920x1080@120,2560x0,1"
|
||||
{ output = "eDP-1"; mode = "preferred"; position = "0x0"; scale = 1.25; }
|
||||
{ output = "HDMI-A-1"; mode = "1920x1080@120"; position = "2560x0"; scale = 1; }
|
||||
];
|
||||
workspace = [
|
||||
"1, monitor:eDP-1, default:true"
|
||||
"2, monitor:eDP-1"
|
||||
"3, monitor:eDP-1"
|
||||
"4, monitor:HDMI-A-1"
|
||||
"5, monitor:HDMI-A-1,border:false,rounding:false"
|
||||
"6, monitor:HDMI-A-1"
|
||||
workspace_rule = [
|
||||
{ workspace = 1; monitor = "eDP-1"; default = true; }
|
||||
{ workspace = 2; monitor = "eDP-1"; }
|
||||
{ workspace = 3; monitor = "eDP-1"; }
|
||||
{ workspace = 4; monitor = "HDMI-A-1"; }
|
||||
{ workspace = 5; monitor = "HDMI-A-1"; border = false; rounding = false; }
|
||||
{ workspace = 6; monitor = "HDMI-A-1"; }
|
||||
];
|
||||
windowrule = [
|
||||
"match:class dev.zed.Zed, workspace 1"
|
||||
"match:class Msty, workspace 1"
|
||||
"match:class ^(com.obsproject.Studio)$, workspace 2"
|
||||
"match:class ^(brave-browser)$, workspace 4, opacity 1.0"
|
||||
"match:class ^(vivaldi-stable)$, workspace 4, opacity 1.0"
|
||||
"match:class ^steam_app_\\d+$, fullscreen on"
|
||||
"match:class ^steam_app_\\d+$, workspace 5"
|
||||
"match:class ^steam_app_\\d+$, idle_inhibit focus"
|
||||
window_rule = [
|
||||
{ match = { class = "dev.zed.Zed" }; workspace = "1"; }
|
||||
{ match = { class = "Msty" }; workspace = "1"; }
|
||||
{ match = { class = "^com.obsproject.Studio$" }; workspace = "2"; }
|
||||
{ match = { class = "^(brave-browser)$" }; workspace = "4"; opacity = 1.0; }
|
||||
{ match = { class = "^(vivaldi-stable)$" }; workspace = "4"; opacity = 1.0; }
|
||||
{ match = { class = "^steam_app_\\d+$" }; fullscreen = true; workspace = "5"; idle_inhibit = "focus"; }
|
||||
];
|
||||
};
|
||||
extraConfig = mkAfter ''
|
||||
-- Host startup: TUXEDO backlight
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("tuxedo-backlight")
|
||||
end)
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
|
||||
@@ -49,13 +49,6 @@ in {
|
||||
user: m3ta-chiron
|
||||
default: true
|
||||
''}"
|
||||
"f /home/hermes/.gitconfig 0644 hermes hermes - ${pkgs.writeText "gitconfig" ''
|
||||
[user]
|
||||
name = m3ta-chiron
|
||||
email = m3ta-chiron@agentmail.to
|
||||
[init]
|
||||
defaultBranch = master
|
||||
''}"
|
||||
];
|
||||
|
||||
systemd.services.copy-hermes-skills = {
|
||||
@@ -95,12 +88,17 @@ in {
|
||||
];
|
||||
|
||||
# Non-secret environment variables
|
||||
# Git identity is set entirely via env vars (GIT_AUTHOR_*, GIT_COMMITTER_*,
|
||||
# GIT_INIT_DEFAULT_BRANCH) — no .gitconfig file needed. Env vars take
|
||||
# precedence over any gitconfig, and the hermes gateway injects them into
|
||||
# all terminal sessions via .env.
|
||||
environment = {
|
||||
GLM_BASE_URL = "https://api.z.ai/api/coding/paas/v4/";
|
||||
GIT_AUTHOR_NAME = "m3ta-chiron";
|
||||
GIT_AUTHOR_EMAIL = "m3ta-chiron@agentmail.to";
|
||||
GIT_COMMITTER_NAME = "m3ta-chiron";
|
||||
GIT_COMMITTER_EMAIL = "m3ta-chiron@agentmail.to";
|
||||
GIT_INIT_DEFAULT_BRANCH = "master";
|
||||
|
||||
# ── API Server (OpenAI-compatible, for Hermes Desktop App) ─────────
|
||||
# Accessible via Netbird mesh VPN — not exposed to the public internet.
|
||||
|
||||
+19
-18
@@ -36,31 +36,32 @@ with lib; {
|
||||
};
|
||||
}
|
||||
|
||||
# ── Hyprland monitor layout ──
|
||||
# ── Hyprland monitor layout & host-specific rules ──
|
||||
(mkIf config.desktop.wm.hyprland.enable {
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
settings = {
|
||||
# Dual monitor: DP-1 left, DP-2 right
|
||||
monitor = [
|
||||
"DP-1,2560x1440@144,0x0,1"
|
||||
"DP-2,2560x1440@144,2560x0,1"
|
||||
{ output = "DP-1"; mode = "2560x1440@144"; position = "0x0"; scale = 1; }
|
||||
{ output = "DP-2"; mode = "2560x1440@144"; position = "2560x0"; scale = 1; }
|
||||
];
|
||||
workspace = [
|
||||
"1, monitor:DP-1, default:true"
|
||||
"2, monitor:DP-1"
|
||||
"3, monitor:DP-1"
|
||||
"4, monitor:DP-2"
|
||||
"5, monitor:DP-2"
|
||||
"6, monitor:DP-2"
|
||||
"7, monitor:DP-2"
|
||||
workspace_rule = [
|
||||
{ workspace = 1; monitor = "DP-1"; default = true; }
|
||||
{ workspace = 2; monitor = "DP-1"; }
|
||||
{ workspace = 3; monitor = "DP-1"; }
|
||||
{ workspace = 4; monitor = "DP-2"; }
|
||||
{ workspace = 5; monitor = "DP-2"; }
|
||||
{ workspace = 6; monitor = "DP-2"; }
|
||||
{ workspace = 7; monitor = "DP-2"; }
|
||||
];
|
||||
windowrule = [
|
||||
"match:class dev.zed.Zed, workspace 1"
|
||||
"match:class Msty, workspace 1"
|
||||
"match:class ^(com.obsproject.Studio)$, workspace 2"
|
||||
"match:class ^(brave-browser)$, workspace 4, opacity 1.0"
|
||||
"match:class ^(vivaldi-stable)$, workspace 4, opacity 1.0"
|
||||
"match:class ^steam_app_\\d+$, idle_inhibit focus"
|
||||
window_rule = [
|
||||
{ match = { class = "dev.zed.Zed" }; workspace = "1"; }
|
||||
{ match = { class = "Msty" }; workspace = "1"; }
|
||||
{ match = { class = "^com.obsproject.Studio$" }; workspace = "2"; }
|
||||
{ match = { class = "^(brave-browser)$" }; workspace = "4"; opacity = 1.0; }
|
||||
{ match = { class = "^(vivaldi-stable)$" }; workspace = "4"; opacity = 1.0; }
|
||||
{ match = { class = "^steam_app_\\d+$" }; idle_inhibit = "focus"; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user