fix: make inputs self-contained

This commit is contained in:
2026-06-06 13:15:27 +02:00
parent a5d321805b
commit 9bceb1c6d0
5 changed files with 557 additions and 176 deletions
Generated
+404 -92
View File
@@ -44,32 +44,17 @@
}, },
"agent-lib": { "agent-lib": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780681759, "lastModified": 1780736323,
"narHash": "sha256-eszNyFb1If4ePaJD1aQTvHFog8lvpwjCTl8F9rUlXnk=", "narHash": "sha256-b4CfjbWTT+5Z0XBI2/W2DnybwkYVwLxghCwXVmw9+Iw=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "9a4ee71b1a9008422266e4364a76ee2f08868b5a", "rev": "b0c832c9e02d8b3d8ad091f022c859382a037afd",
"revCount": 25, "revCount": 26,
"type": "git",
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib"
},
"original": {
"type": "git",
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib"
}
},
"agent-lib_2": {
"inputs": {
"nixpkgs": ["m3ta-home", "nixpkgs"]
},
"locked": {
"lastModified": 1780157040,
"narHash": "sha256-j2d3nj3FvOlxQ+Zlse+rMo3qHD3m4Gick5uiwtTaA2o=",
"ref": "refs/heads/master",
"rev": "f63712a9ba03da6e2f591766d0f055aa65e6d237",
"revCount": 24,
"type": "git", "type": "git",
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib" "url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib"
}, },
@@ -162,7 +147,11 @@
}, },
"basecamp": { "basecamp": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "m3ta-nixpkgs", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"m3ta-nixpkgs",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1774505501, "lastModified": 1774505501,
@@ -181,7 +170,10 @@
}, },
"basecamp_2": { "basecamp_2": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-nixpkgs", "nixpkgs"] "nixpkgs": [
"m3ta-nixpkgs",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1774505501, "lastModified": 1774505501,
@@ -200,8 +192,14 @@
}, },
"blueprint": { "blueprint": {
"inputs": { "inputs": {
"nixpkgs": ["llm-agents", "nixpkgs"], "nixpkgs": [
"systems": ["llm-agents", "systems"] "llm-agents",
"nixpkgs"
],
"systems": [
"llm-agents",
"systems"
]
}, },
"locked": { "locked": {
"lastModified": 1776249299, "lastModified": 1776249299,
@@ -219,10 +217,22 @@
}, },
"bun2nix": { "bun2nix": {
"inputs": { "inputs": {
"flake-parts": ["llm-agents", "flake-parts"], "flake-parts": [
"nixpkgs": ["llm-agents", "nixpkgs"], "llm-agents",
"systems": ["llm-agents", "systems"], "flake-parts"
"treefmt-nix": ["llm-agents", "treefmt-nix"] ],
"nixpkgs": [
"llm-agents",
"nixpkgs"
],
"systems": [
"llm-agents",
"systems"
],
"treefmt-nix": [
"llm-agents",
"treefmt-nix"
]
}, },
"locked": { "locked": {
"lastModified": 1778446047, "lastModified": 1778446047,
@@ -240,7 +250,10 @@
}, },
"darwin": { "darwin": {
"inputs": { "inputs": {
"nixpkgs": ["agenix", "nixpkgs"] "nixpkgs": [
"agenix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1744478979, "lastModified": 1744478979,
@@ -259,7 +272,11 @@
}, },
"darwin_2": { "darwin_2": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "agenix", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"agenix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1744478979, "lastModified": 1744478979,
@@ -278,7 +295,9 @@
}, },
"disko": { "disko": {
"inputs": { "inputs": {
"nixpkgs": ["nixpkgs"] "nixpkgs": [
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780290312, "lastModified": 1780290312,
@@ -296,7 +315,10 @@
}, },
"dms": { "dms": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "nixpkgs"], "nixpkgs": [
"m3ta-home",
"nixpkgs"
],
"quickshell": "quickshell" "quickshell": "quickshell"
}, },
"locked": { "locked": {
@@ -316,7 +338,10 @@
}, },
"dms-plugin-registry": { "dms-plugin-registry": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780281921, "lastModified": 1780281921,
@@ -334,7 +359,10 @@
}, },
"flake-parts": { "flake-parts": {
"inputs": { "inputs": {
"nixpkgs-lib": ["hermes-agent", "nixpkgs"] "nixpkgs-lib": [
"hermes-agent",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1772408722, "lastModified": 1772408722,
@@ -352,7 +380,10 @@
}, },
"flake-parts_2": { "flake-parts_2": {
"inputs": { "inputs": {
"nixpkgs-lib": ["llm-agents", "nixpkgs"] "nixpkgs-lib": [
"llm-agents",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1778716662, "lastModified": 1778716662,
@@ -370,7 +401,33 @@
}, },
"flake-parts_3": { "flake-parts_3": {
"inputs": { "inputs": {
"nixpkgs-lib": ["m3ta-home", "nur", "nixpkgs"] "nixpkgs-lib": [
"m3ta-home",
"hermes-agent",
"nixpkgs"
]
},
"locked": {
"lastModified": 1772408722,
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_4": {
"inputs": {
"nixpkgs-lib": [
"m3ta-home",
"nur",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1733312601, "lastModified": 1733312601,
@@ -386,9 +443,12 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_4": { "flake-parts_5": {
"inputs": { "inputs": {
"nixpkgs-lib": ["nur", "nixpkgs"] "nixpkgs-lib": [
"nur",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1733312601, "lastModified": 1733312601,
@@ -414,23 +474,52 @@
"uv2nix": "uv2nix_2" "uv2nix": "uv2nix_2"
}, },
"locked": { "locked": {
"lastModified": 1780061757, "lastModified": 1780707343,
"narHash": "sha256-0CmNH879jnsAAszo1nkkFm8RNE49xtwUditYdFIYBCM=", "narHash": "sha256-ngpkopVczNrT0bfCXHm38QjgrZT96Bm/rO89NA/ls3Y=",
"owner": "NousResearch", "owner": "NousResearch",
"repo": "hermes-agent", "repo": "hermes-agent",
"rev": "77a1650c78a4cb1813d8a81fa1da40a15b6a3ec5", "rev": "3c231eb3979ab9c57d5cd6d02f1d577a3b718b43",
"type": "github"
},
"original": {
"owner": "NousResearch",
"ref": "v2026.6.5",
"repo": "hermes-agent",
"type": "github"
}
},
"hermes-agent_2": {
"inputs": {
"flake-parts": "flake-parts_3",
"nixpkgs": [
"m3ta-home",
"nixpkgs"
],
"npm-lockfile-fix": "npm-lockfile-fix_2",
"pyproject-build-systems": "pyproject-build-systems_2",
"pyproject-nix": "pyproject-nix_5",
"uv2nix": "uv2nix_4"
},
"locked": {
"lastModified": 1780733287,
"narHash": "sha256-cMm2PL8ymiizMnK2JAHVSMCfPsMAis2OcIbdYwR3ZSs=",
"owner": "NousResearch",
"repo": "hermes-agent",
"rev": "5af899c7ca753a56a4daeb6fa6ff3cbb113234b8",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NousResearch", "owner": "NousResearch",
"ref": "v2026.5.29.2",
"repo": "hermes-agent", "repo": "hermes-agent",
"type": "github" "type": "github"
} }
}, },
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": ["agenix", "nixpkgs"] "nixpkgs": [
"agenix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1745494811, "lastModified": 1745494811,
@@ -448,14 +537,16 @@
}, },
"home-manager_2": { "home-manager_2": {
"inputs": { "inputs": {
"nixpkgs": ["nixpkgs"] "nixpkgs": [
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780593650, "lastModified": 1780679734,
"narHash": "sha256-CHo7k65YTL3HY+WQVedDTupji+LMgNlKCdrtRHZFAK4=", "narHash": "sha256-KmRNvpNOb7QEORa06bVgjW9kITcx0VhsI7w0vhmZyD8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "447fd9ff62501dae7206dfe180ee89f8de27b7d5", "rev": "b2b7db486e06e098711dc291bb25db82850e1d16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -466,7 +557,11 @@
}, },
"home-manager_3": { "home-manager_3": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "agenix", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"agenix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1745494811, "lastModified": 1745494811,
@@ -484,7 +579,10 @@
}, },
"home-manager_4": { "home-manager_4": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780099287, "lastModified": 1780099287,
@@ -502,7 +600,10 @@
}, },
"hyprlang": { "hyprlang": {
"inputs": { "inputs": {
"nixpkgs": ["rose-pine-hyprcursor", "nixpkgs"], "nixpkgs": [
"rose-pine-hyprcursor",
"nixpkgs"
],
"systems": "systems_4" "systems": "systems_4"
}, },
"locked": { "locked": {
@@ -529,11 +630,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1780640554, "lastModified": 1780723669,
"narHash": "sha256-dgnL2gTgRoO1D4z6wkARGCO/gimq3/UE/mVFcQcWBn8=", "narHash": "sha256-1GqON+bTWMrA8tTfZ194tk5Fi8R4YWjBUaScB1mTkmA=",
"owner": "numtide", "owner": "numtide",
"repo": "llm-agents.nix", "repo": "llm-agents.nix",
"rev": "f764eba1fdd162a1f2bc923f7e7034b894a22b4a", "rev": "7aa0fff2d50775e8b79040824385eaf250a250a9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -545,35 +646,38 @@
"m3ta-home": { "m3ta-home": {
"inputs": { "inputs": {
"agenix": "agenix_2", "agenix": "agenix_2",
"agent-lib": "agent-lib_2", "agent-lib": "agent-lib",
"agents": "agents", "agents": "agents",
"dms": "dms", "dms": "dms",
"dms-plugin-registry": "dms-plugin-registry", "dms-plugin-registry": "dms-plugin-registry",
"hermes-agent": "hermes-agent_2",
"home-manager": "home-manager_4", "home-manager": "home-manager_4",
"m3ta-nixpkgs": "m3ta-nixpkgs", "m3ta-nixpkgs": "m3ta-nixpkgs",
"nix-colors": "nix-colors", "nix-colors": "nix-colors",
"nixpkgs": ["nixpkgs"], "nixpkgs": [
"nixpkgs"
],
"nur": "nur" "nur": "nur"
}, },
"locked": { "locked": {
"lastModified": 1780420920, "lastModified": 1780744454,
"narHash": "sha256-dxcRmexgCX+DlmlFRE/eW3gzdohVU7+JTAkzUzvG/1Y=", "narHash": "sha256-UMve8ATj7lb2aDEYs6ErYYl2zxoe+cTbZ3JZrJO7Whw=",
"ref": "refs/heads/master", "path": "/home/m3tam3re/p/NIX/m3ta-home",
"rev": "19dea8277ef9c473e95e2dc3be367044dfa3f65c", "type": "path"
"revCount": 45,
"type": "git",
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home"
}, },
"original": { "original": {
"type": "git", "path": "/home/m3tam3re/p/NIX/m3ta-home",
"url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home" "type": "path"
} }
}, },
"m3ta-nixpkgs": { "m3ta-nixpkgs": {
"inputs": { "inputs": {
"agents": "agents_2", "agents": "agents_2",
"basecamp": "basecamp", "basecamp": "basecamp",
"nixpkgs": ["m3ta-home", "nixpkgs"], "nixpkgs": [
"m3ta-home",
"nixpkgs"
],
"nixpkgs-master": "nixpkgs-master", "nixpkgs-master": "nixpkgs-master",
"openspec": "openspec" "openspec": "openspec"
}, },
@@ -813,11 +917,11 @@
}, },
"nixpkgs-master_3": { "nixpkgs-master_3": {
"locked": { "locked": {
"lastModified": 1780675612, "lastModified": 1780727454,
"narHash": "sha256-0uf5rIKWl6ljqZtDdYhVpBru9cggmUyoOw+m7IZNKYk=", "narHash": "sha256-mkqXK8st0OlcseyZGon2n+k7SThg+P5LRt3jTza26E0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a08eccd152a1534c8e01e69709fd21b108e5be2d", "rev": "51d40d1b686a6bb543d2edc5f8919aa62d26f27e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -829,11 +933,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1779796641, "lastModified": 1780511130,
"narHash": "sha256-ZsIrKmhp4vbBXoXXmR/tBXA/UCsAQiJL9vsgZEduhVY=", "narHash": "sha256-2v9lT4ya59Lh1FqPeLnz1MoX9y/wz2huqfe9RtQZITk=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "25f538306313eae3927264466c70d7001dcea1df", "rev": "535f3e6942cb1cead3929c604320d3db54b542b9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -989,7 +1093,32 @@
}, },
"npm-lockfile-fix": { "npm-lockfile-fix": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "nixpkgs"] "nixpkgs": [
"hermes-agent",
"nixpkgs"
]
},
"locked": {
"lastModified": 1775903712,
"narHash": "sha256-2GV79U6iVH4gKAPWYrxUReB0S41ty/Y3dBLquU8AlaA=",
"owner": "jeslie0",
"repo": "npm-lockfile-fix",
"rev": "c6093acb0c0548e0f9b8b3d82918823721930fe8",
"type": "github"
},
"original": {
"owner": "jeslie0",
"repo": "npm-lockfile-fix",
"type": "github"
}
},
"npm-lockfile-fix_2": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1775903712, "lastModified": 1775903712,
@@ -1007,7 +1136,7 @@
}, },
"nur": { "nur": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_3", "flake-parts": "flake-parts_4",
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
@@ -1026,15 +1155,17 @@
}, },
"nur_2": { "nur_2": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_5",
"nixpkgs": ["nixpkgs"] "nixpkgs": [
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780667345, "lastModified": 1780729463,
"narHash": "sha256-JkFBPvT91un8Hq2wrMJxcJgiWwpIl6X5frAH6E8f32M=", "narHash": "sha256-FUkUJB+l3QLMzp/egsfvEnLJWe/FxyY/pYSrkYY4gtY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "c81bd4bb3912e373c17eaff12d67d478dfedf418", "rev": "80e259e2523c4ef547419d437872278a01d5a387",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1045,7 +1176,11 @@
}, },
"openspec": { "openspec": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "m3ta-nixpkgs", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"m3ta-nixpkgs",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1779302169, "lastModified": 1779302169,
@@ -1063,7 +1198,10 @@
}, },
"openspec_2": { "openspec_2": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-nixpkgs", "nixpkgs"] "nixpkgs": [
"m3ta-nixpkgs",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1779302169, "lastModified": 1779302169,
@@ -1081,7 +1219,10 @@
}, },
"pyproject-build-systems": { "pyproject-build-systems": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "nixpkgs"], "nixpkgs": [
"hermes-agent",
"nixpkgs"
],
"pyproject-nix": "pyproject-nix", "pyproject-nix": "pyproject-nix",
"uv2nix": "uv2nix" "uv2nix": "uv2nix"
}, },
@@ -1099,9 +1240,37 @@
"type": "github" "type": "github"
} }
}, },
"pyproject-build-systems_2": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"nixpkgs"
],
"pyproject-nix": "pyproject-nix_4",
"uv2nix": "uv2nix_3"
},
"locked": {
"lastModified": 1772555609,
"narHash": "sha256-3BA3HnUvJSbHJAlJj6XSy0Jmu7RyP2gyB/0fL7XuEDo=",
"owner": "pyproject-nix",
"repo": "build-system-pkgs",
"rev": "c37f66a953535c394244888598947679af231863",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "build-system-pkgs",
"type": "github"
}
},
"pyproject-nix": { "pyproject-nix": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "pyproject-build-systems", "nixpkgs"] "nixpkgs": [
"hermes-agent",
"pyproject-build-systems",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1769936401, "lastModified": 1769936401,
@@ -1119,7 +1288,10 @@
}, },
"pyproject-nix_2": { "pyproject-nix_2": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "nixpkgs"] "nixpkgs": [
"hermes-agent",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1772865871, "lastModified": 1772865871,
@@ -1137,7 +1309,79 @@
}, },
"pyproject-nix_3": { "pyproject-nix_3": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "uv2nix", "nixpkgs"] "nixpkgs": [
"hermes-agent",
"uv2nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1771518446,
"narHash": "sha256-nFJSfD89vWTu92KyuJWDoTQJuoDuddkJV3TlOl1cOic=",
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"rev": "eb204c6b3335698dec6c7fc1da0ebc3c6df05937",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"type": "github"
}
},
"pyproject-nix_4": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"pyproject-build-systems",
"nixpkgs"
]
},
"locked": {
"lastModified": 1769936401,
"narHash": "sha256-kwCOegKLZJM9v/e/7cqwg1p/YjjTAukKPqmxKnAZRgA=",
"owner": "nix-community",
"repo": "pyproject.nix",
"rev": "b0d513eeeebed6d45b4f2e874f9afba2021f7812",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "pyproject.nix",
"type": "github"
}
},
"pyproject-nix_5": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"nixpkgs"
]
},
"locked": {
"lastModified": 1772865871,
"narHash": "sha256-/ZTSg97aouL0SlPHaokA4r3iuH9QzHVuWPACD2CUCFY=",
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"rev": "e537db02e72d553cea470976b9733581bcf5b3ed",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "pyproject.nix",
"type": "github"
}
},
"pyproject-nix_6": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"uv2nix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1771518446, "lastModified": 1771518446,
@@ -1155,7 +1399,11 @@
}, },
"quickshell": { "quickshell": {
"inputs": { "inputs": {
"nixpkgs": ["m3ta-home", "dms", "nixpkgs"] "nixpkgs": [
"m3ta-home",
"dms",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1776854048, "lastModified": 1776854048,
@@ -1216,7 +1464,9 @@
}, },
"rustfs": { "rustfs": {
"inputs": { "inputs": {
"nixpkgs": ["nixpkgs"] "nixpkgs": [
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780564157, "lastModified": 1780564157,
@@ -1309,7 +1559,10 @@
}, },
"treefmt-nix": { "treefmt-nix": {
"inputs": { "inputs": {
"nixpkgs": ["llm-agents", "nixpkgs"] "nixpkgs": [
"llm-agents",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1780220602, "lastModified": 1780220602,
@@ -1345,7 +1598,11 @@
}, },
"uv2nix": { "uv2nix": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "pyproject-build-systems", "nixpkgs"], "nixpkgs": [
"hermes-agent",
"pyproject-build-systems",
"nixpkgs"
],
"pyproject-nix": [ "pyproject-nix": [
"hermes-agent", "hermes-agent",
"pyproject-build-systems", "pyproject-build-systems",
@@ -1368,7 +1625,10 @@
}, },
"uv2nix_2": { "uv2nix_2": {
"inputs": { "inputs": {
"nixpkgs": ["hermes-agent", "nixpkgs"], "nixpkgs": [
"hermes-agent",
"nixpkgs"
],
"pyproject-nix": "pyproject-nix_3" "pyproject-nix": "pyproject-nix_3"
}, },
"locked": { "locked": {
@@ -1384,6 +1644,58 @@
"repo": "uv2nix", "repo": "uv2nix",
"type": "github" "type": "github"
} }
},
"uv2nix_3": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"pyproject-build-systems",
"nixpkgs"
],
"pyproject-nix": [
"m3ta-home",
"hermes-agent",
"pyproject-build-systems",
"pyproject-nix"
]
},
"locked": {
"lastModified": 1770770348,
"narHash": "sha256-A2GzkmzdYvdgmMEu5yxW+xhossP+txrYb7RuzRaqhlg=",
"owner": "pyproject-nix",
"repo": "uv2nix",
"rev": "5d1b2cb4fe3158043fbafbbe2e46238abbc954b0",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "uv2nix",
"type": "github"
}
},
"uv2nix_4": {
"inputs": {
"nixpkgs": [
"m3ta-home",
"hermes-agent",
"nixpkgs"
],
"pyproject-nix": "pyproject-nix_6"
},
"locked": {
"lastModified": 1773039484,
"narHash": "sha256-+boo33KYkJDw9KItpeEXXv8+65f7hHv/earxpcyzQ0I=",
"owner": "pyproject-nix",
"repo": "uv2nix",
"rev": "b68be7cfeacbed9a3fa38a2b5adc0cfb81d9bb1f",
"type": "github"
},
"original": {
"owner": "pyproject-nix",
"repo": "uv2nix",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",
+1 -18
View File
@@ -25,7 +25,6 @@
m3ta-nixpkgs.url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/nixpkgs"; m3ta-nixpkgs.url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/nixpkgs";
llm-agents.url = "github:numtide/llm-agents.nix"; llm-agents.url = "github:numtide/llm-agents.nix";
#
nur = { nur = {
url = "github:nix-community/NUR"; url = "github:nix-community/NUR";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -43,28 +42,12 @@
nix-colors.url = "github:misterio77/nix-colors"; nix-colors.url = "github:misterio77/nix-colors";
m3ta-home = { m3ta-home = {
url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home";
# url = "path:/home/m3tam3re/p/NIX/m3ta-home";
<<<<<<< HEAD
||||||| a9ffe3e
# url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home"; # url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home";
url = "path:/home/m3tam3re/p/NIX/m3ta-home"; url = "path:/home/m3tam3re/p/NIX/m3ta-home";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
agent-lib = { hermes-agent.url = "github:NousResearch/hermes-agent/v2026.6.5";
url = "path:/home/m3tam3re/p/NIX/agent-lib";
=======
inputs.nixpkgs.follows = "nixpkgs";
};
agent-lib = {
url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib";
>>>>>>> feature/agent-lib-m3-kratos
inputs.nixpkgs.follows = "nixpkgs";
};
hermes-agent.url = "github:NousResearch/hermes-agent/v2026.5.29.2";
rustfs = { rustfs = {
url = "github:rustfs/rustfs-flake"; url = "github:rustfs/rustfs-flake";
+130 -43
View File
@@ -8,44 +8,142 @@
# Edge TTS: Seraphina — friendly, multilingual German female voice (free, no API key) # Edge TTS: Seraphina — friendly, multilingual German female voice (free, no API key)
edgeVoice = "de-DE-SeraphinaMultilingualNeural"; edgeVoice = "de-DE-SeraphinaMultilingualNeural";
agentLock = builtins.fromJSON (builtins.readFile ../../../agent-sources.lock.json); agentSkillExclusions = {
m3ta-agents = [];
agentSkillSelections = { anthropic = ["pdf" "skill-creator" "xlsx"];
m3ta-agents.exclude = []; basecamp = [];
anthropic.exclude = ["pdf" "skill-creator" "xlsx"]; kestra = [];
basecamp.exclude = []; mattpocock = ["grill-me" "caveman"];
kestra.exclude = []; superpowers = ["brainstorming" "systematic-debugging"];
mattpocock.exclude = ["grill-me" "caveman"]; vercel = [];
superpowers.exclude = ["brainstorming" "systematic-debugging"];
vercel.exclude = [];
}; };
sourceRoot = source: agentLibSharedSkillsDir = ".agents/skills";
builtins.fetchGit {
inherit (source) url rev; agentLibHomeManagerStub = {lib, ...}: {
options.home.homeDirectory = lib.mkOption {
type = lib.types.str;
default = "/var/lib/hermes";
}; };
options.home.file = lib.mkOption {
type = lib.types.attrsOf (lib.types.submodule ({name, ...}: {
options = {
enable = lib.mkOption {
type = lib.types.bool;
default = true;
};
executable = lib.mkOption {
type = lib.types.nullOr lib.types.bool;
default = null;
};
force = lib.mkOption {
type = lib.types.bool;
default = false;
};
ignorelinks = lib.mkOption {
type = lib.types.bool;
default = false;
};
onChange = lib.mkOption {
type = lib.types.lines;
default = "";
};
recursive = lib.mkOption {
type = lib.types.bool;
default = false;
};
source = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
};
target = lib.mkOption {
type = lib.types.str;
default = name;
};
text = lib.mkOption {
type = lib.types.nullOr lib.types.lines;
default = null;
};
};
}));
default = {};
};
options.home.packages = lib.mkOption {
type = lib.types.listOf lib.types.package;
default = [];
};
options.assertions = lib.mkOption {
type = lib.types.listOf lib.types.attrs;
default = [];
};
};
selectedSkillNames = sourceName: let agentLibSourceSelections =
source = agentLock.sources.${sourceName}; lib.mapAttrs (_sourceName: exclude: {
excluded = agentSkillSelections.${sourceName}.exclude; skills = {
in all = true;
lib.subtractLists excluded (builtins.attrNames source.items.skills); inherit exclude;
};
})
agentSkillExclusions;
copySkill = sourceName: skillName: let # Evaluate agent-lib's Hermes target renderer with a minimal Home Manager
source = agentLock.sources.${sourceName}; # surface, then expose its selected shared-skill outputs as a single Nix store
item = source.items.skills.${skillName}; # directory for hermes-agent's native `skills.external_dirs` setting. The full
# Home Manager module is not imported into this NixOS host because Hermes runs
# as a system service user rather than a managed login user's Home Manager
# generation.
agentLibEval = lib.evalModules {
specialArgs = {inherit pkgs;};
modules = [
agentLibHomeManagerStub
inputs.agent-lib.homeManagerModules.default
{
home.homeDirectory = "/var/lib/hermes";
programs.agent-lib = {
enable = true;
lockFile = ../../../agent-sources.lock.json;
shared.skillsDir = agentLibSharedSkillsDir;
targets.hermes.enable = true;
profiles.default.sources = agentLibSourceSelections;
};
}
];
};
agentLibFailedAssertions = lib.filter (assertion: !assertion.assertion) agentLibEval.config.assertions;
agentLibHomeFiles =
if agentLibFailedAssertions != []
then throw (builtins.head agentLibFailedAssertions).message
else agentLibEval.config.home.file;
hermesSkillHomeFiles =
lib.filterAttrs (
targetPath: file:
lib.hasPrefix "${agentLibSharedSkillsDir}/" targetPath
&& file ? source
&& file.source != null
)
agentLibHomeFiles;
linkHermesSkill = targetPath: file: let
skillName = lib.removePrefix "${agentLibSharedSkillsDir}/" targetPath;
in '' in ''
cp -R ${sourceRoot source}/${source.root}/${item.path} $out/${skillName} ln -s ${file.source} "$out"/${lib.escapeShellArg skillName}
''; '';
copySourceSkills = sourceName: # Deterministic store renderer consumed directly by Hermes. Each entry is a
lib.concatMapStringsSep "\n" (copySkill sourceName) (selectedSkillNames sourceName); # symlink to the immutable skill directory selected by agent-lib, so
# `$out/<skill>/SKILL.md` exists without a mutable copy service.
# Build skills from the agent-lib lockfile instead of the legacy AGENTS flake. hermesSkills =
hermesSkills = pkgs.runCommand "hermes-agent-lib-skills" {} '' if hermesSkillHomeFiles == {}
mkdir -p $out then throw "agent-lib: Hermes skill selection produced no skills"
${lib.concatMapStringsSep "\n" copySourceSkills (builtins.attrNames agentSkillSelections)} else
''; pkgs.runCommand "hermes-agent-lib-skills" {} ''
mkdir -p $out
${lib.concatMapAttrsStringSep "\n" linkHermesSkill hermesSkillHomeFiles}
'';
in { in {
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
@@ -63,18 +161,7 @@ in {
''}" ''}"
]; ];
systemd.services.copy-hermes-skills = { systemd.services.hermes-agent.restartTriggers = [hermesSkills];
description = "Copy agent skills to hermes home directory";
wantedBy = ["hermes-agent.service"];
before = ["hermes-agent.service"];
serviceConfig.Type = "oneshot";
serviceConfig.RemainAfterExit = true;
script = ''
mkdir -p /var/lib/hermes/.agents
cp -rT ${hermesSkills} /var/lib/hermes/.agents/skills
chown -R hermes:hermes /var/lib/hermes/.agents
'';
};
services.hermes-agent = { services.hermes-agent = {
enable = true; enable = true;
@@ -175,7 +262,7 @@ in {
skills = { skills = {
external_dirs = [ external_dirs = [
"/var/lib/hermes/.agents/skills" hermesSkills
]; ];
}; };
+22 -23
View File
@@ -1,26 +1,25 @@
age-encryption.org/v1 age-encryption.org/v1
-> ssh-ed25519 4NLKrw 2TwbZwX9SwWg4SVC0A2ICmyRjSfO+xtfBcBOK1lh3T4 -> ssh-ed25519 4NLKrw 42tBp6EbDJpC7EBt0++QxmF3N9rQJ/AP+7A/S174rCs
DSf4DrOAvW7L49lh6cq5IqrMM7gqXv2+67rR3ttn+CE bRzpQku0GLEBvANvCdeH3L4Kf06k6w2C4FfZCOp2QWI
-> ssh-ed25519 5kwcsA K1hqFOAxq2T+oLp3bQjLYpXtlQVkA7RHCM/8ETMGbwU -> ssh-ed25519 5kwcsA YAYkQzsxfbHwrCPMW2eqLS9mRuuxr+EjHKl7MV3DDEo
xIE4xz50LB5vbDTTLKVcx9vC2iXIsRLThHYYxGjcJyY dN3TitETbdPbXzBtIDBglienhY4oDsFGgfe0VYdsP1o
-> ssh-ed25519 9d4YIQ bXYb62OM/N+EXpMOZZ6zEbpfaH10Vz62PuUdGODXolw -> ssh-ed25519 9d4YIQ 2vTWMSuLrgpgaTWeu0ARoUOukLBKupCfMdqJhLvTqwA
j64kKzOn8CmSnykEuWnXHZ0nfqwOfOxX4FPR4GSouR0 Lzk2Uo2U3tUJiq29on/a5zYfuUjgOZvCHhZYuFGSDG4
-> ssh-ed25519 3Bcr1w C4alN6ud7q0K4I7NHuBgC77D6zeTfZVGjNS3EKpvL00 -> ssh-ed25519 3Bcr1w x689Z0/TsOLLk1JNPXg2jj6y5ucaH37zRt46d/Z1l2w
NpjOsg3eJ5LvX0lV7NYuVHLeqeYylHdmw60H+KeG1GY Bkzg3umkDYFBemmgev/M5LUFuobFugXe0u85mLmsDSo
-> ssh-ed25519 c4NQlA In5wsg4+LTIEbP75B83GMXPCItSPGwKWUW8QO+QjXyY -> ssh-ed25519 c4NQlA 5Dn6e8bILaYl9FVt+ZwuZ6rOC0k0Kg1+KOSP4JakyWI
oK1kikhr4RMq6QMv9kjNjiKrf5srlGh7hGbU2qns2rM AT6LeCo+P7RjgNhRex04kJ/7NHD2DAWRqs33uOJ7e5E
-> ssh-rsa DQlE7w -> ssh-rsa DQlE7w
tcP4yPgGWqHYeE1gw/KD6cswik+9WU2s2f7hg5mK78085sQ7npXRsBVAz2OCRn07 M9pUnzZDa1v6X5UbQOE6HILaGU36VkQtnfXaJJdxJSRQ/sE9R3ZQoLjRZAw+UhUf
foeAAmnY4YmKriBh421JOVNBDOXHR5dfaIKY9b663L+rYj99ic0rfW26C+dqKitF 09JwLkS55477xaar3bpvvOxeP4MrtTHLJ7593eEkFT3i45FfVmxutq6EYckZrCJB
SnvveL3Zf16nqg6duSVA7LIcIFgkIlA+RXnHPVho+P4GwEH7W8nCf/4kUquuhB7B WjrCG7Cbvc20o6s54PYiF4Xk8AuPxt+SElRxBtcOK+SPba84f+WWHqrBA1YRzTDK
F4Hx1qOknmGyNBJBFi27D04ZDDk/ZVxioYsO6P6TUu7MuaGmQCoVKREDl5RRh4zO fsM15eKWsJgzaz5y36grv4xSj4KbWMFtmEt5V5BEW32+zXBU5CPhonO59TxEQgh4
XD8/TFDRsJLqqcbCKIlU+6CN1+L0r4FN4K0UaTjwPNzGvn5EEjBKw9RpOhdvI28I hI2+gNmAzKQja7xbuxCyr3jcXWJz7IuXcrklr+2ZjF1wx3BDll1z+vxSX0C88MCc
WlAQ+w6gdQiz9Ju4e5p7Doz2MbNb6894DimawHjzl968Xy5ifX2XA+FBdcW5hU9A OLKDfnUiDa6BlgUfLK90dLIia8v0oIPXs4OWRfYs7SC/Z3QOPpSO62Ky9dKYRrod
u+7VXKZmbfMyvRA7lmKRoi4SurJAyQd6iXBrVKfTwFc53V/tJi48bsKcE3yXxHH+ PHvCgxX28QvROE4TekL9PV81AfAbMVJrnkRiybg6id8CscldtDmgaKqoaIoJlAuF
lKGuZFNGDDkqCruycjvz94WaIHy3fv5hhmBdgwoCZK1VGSLAnwdm1rG4B9m3t/K8 g5/LGd+FPfmlv2iNfGUn2Glhui8SkrBK1MzGJpeQw+l4CXLH33yQzHX0m6TdQBzr
-> ssh-ed25519 CSMyhg FNYYdEIJYcxkjMuM5lnIs9gIilvgD44uazZE8CjNeho -> ssh-ed25519 CSMyhg 5YHqBNbkkUFVhDEfOM4P2tAxT2t1rDn5KItUcjUs4DY
QHeghlsOOlYNMwhMHT4o7DeuyxGP/3wyqm94HUHjn44 oWEKUGiIVkRQvEkY33PpOUcoqsmacgHAaX58H6sRpP4
--- zRG6aCTS+X18VpeN+tz38kaUoilk1kN5KrWTWYZ6pV4 --- KH+IYh4+bS3JMeEmFYakwIceMxOrlEZj0Fqt3VMgFRk
ræX _qÔÁ’Ð껿H#p¯f™”}(žA(ã|»?ë0ªyJk¥SD‡\Jm&uõà &Ô9€ýÄ5Ù+çÊ…!v%Y˜ù~ãÁ$û“šZÇÓ° j„z–Â\ßá1,Vf˜ 96¨ºà·ènÅϬuk!ß±1ÝNItŽNŸ8EçwĹ]3µ”S*¡õ«0>!ý9zc‡(”2OI.^jC”&$ºÚ\ÛËWtÇÃNÿ#Õ€Å3¾ÜøÞÌÏcMuÈAߢ•<¾)¬´¼a¥rdí'pÄggPä5’ÆõOQòNfà”×1AZ|1v\š4F›‡Ò 6;„T<l£
£’æ1zª»#Ó
Binary file not shown.