Drop the custom mkLlmAgentsOverlay factory (172 top-level attrs + 17-entry blocklist guarding against nixpkgs clobbering — the source of the webcord buildNpmPackage and fetchPnpmDeps stack overflows). Apply inputs.llm-agents.overlays.shared-nixpkgs directly instead. It exposes everything under the pkgs.llm-agents.* namespace and clobbers nothing, so the blocklist becomes unnecessary. Packages stay built against this system's nixpkgs (allowUnfree), which qmd.override cudaSupport in the m3-ares NVIDIA specialisation requires. Consumers switched to namespaced refs: - hosts/m3-hermes/services/hermes-agent.nix: herdr, opencode, qmd - m3ta-home agents.nix (input bumped): agent-browser, beads, herdr, qmd, openspec — unqualified refs would now silently resolve to outdated nixpkgs attrs (opencode 0.3.x) or vanish. openspec pass-through dropped from m3ta-nixpkgs (input bumped): llm-agents is the single source of truth now. Note: flake.nix/lock carry the pre-existing local path inputs for m3ta-home and m3ta-nixpkgs (dev state, gitea URLs kept as comments). Verified: drvPath evals for m3-hermes, m3-atlas, and the m3-ares NVIDIA specialisation (qmd + CUDA EULA) all pass; statix/deadnix clean.
58 lines
1.9 KiB
Nix
58 lines
1.9 KiB
Nix
{inputs, ...}: {
|
|
# This one brings our custom packages from the 'pkgs' directory
|
|
# additions = final: prev:
|
|
# (import ../pkgs {pkgs = final;})
|
|
# // {rose-pine-hyprcursor = inputs.rose-pine-hyprcursor.packages.${prev.system}.default;};
|
|
|
|
# This one contains whatever you want to overlay
|
|
# You can change versions, add patches, set compilation flags, anything really.
|
|
# https://nixos.wiki/wiki/Overlays
|
|
modifications = final: _prev: {
|
|
# aardvark-dns 2.x has a DNS forwarding bug breaking external name
|
|
# resolution in podman networks — pin to last 1.x from nixpkgs-stable.
|
|
aardvark-dns = import ./mods/aardvark-dns.nix {inherit (final) stable;};
|
|
};
|
|
|
|
# temp-packages = final: _prev: {
|
|
# temp = import inputs.nixpkgs-9e9486b {
|
|
# system = final.stdenv.hostPlatform.system;
|
|
# config.allowUnfree = true;
|
|
# };
|
|
# };
|
|
|
|
stable-packages = final: _prev: {
|
|
stable = import inputs.nixpkgs-stable {
|
|
system = final.stdenv.hostPlatform.system;
|
|
config.allowUnfree = true;
|
|
};
|
|
};
|
|
|
|
# pinned-packages = final: _prev: {
|
|
# pinned = import inputs.nixpkgs-9472de4 {
|
|
# system = final.stdenv.hostPlatform.system;
|
|
# config.allowUnfree = true;
|
|
# };
|
|
# };
|
|
|
|
# locked-packages = final: _prev: {
|
|
# locked = import inputs.nixpkgs-locked {
|
|
# system = final.stdenv.hostPlatform.system;
|
|
# config.allowUnfree = true;
|
|
# };
|
|
# };
|
|
|
|
master-packages = final: _prev: {
|
|
master = import inputs.nixpkgs-master {
|
|
system = final.stdenv.hostPlatform.system;
|
|
config.allowUnfree = true;
|
|
};
|
|
};
|
|
|
|
# llm-agent packages (qmd, herdr, beads, …) come from
|
|
# inputs.llm-agents.overlays.shared-nixpkgs, applied directly in
|
|
# hosts/common/default.nix. They are consumed via the `pkgs.llm-agents.*`
|
|
# namespace — no flattening to top-level attributes (that clobbered
|
|
# nixpkgs attrs like buildNpmPackage/fetchPnpmDeps and needed a
|
|
# hard-to-maintain blocklist).
|
|
}
|