Files
AZ-NIX-SERVERS/overlays/default.nix
T

53 lines
2.0 KiB
Nix

{inputs, ...}: {
# This one brings our custom packages from the 'pkgs' directory
additions = final: prev:
(import ../pkgs {
pkgs = final;
atrocore-docker = inputs.atrocore-docker;
})
// {
zugferd-service = inputs.zugferd-service.packages.${prev.stdenv.hostPlatform.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: {
# n8n = import ./mods/n8n.nix {inherit prev;};
snipe-it = import ./mods/snipe-it.nix {inherit prev;};
vivaldi = prev.vivaldi.override {
commandLineArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
};
# example = prev.example.overrideAttrs (oldAttrs: rec {
# ...
# });
};
stable-packages = final: _prev: {
stable = import inputs.nixpkgs {
system = final.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
};
unstable-packages = final: _prev: {
unstable = import inputs.nixpkgs-unstable {
system = final.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
};
# Flatten llm-agents packages into top-level pkgs namespace.
# Keep plain derivations only. llm-agents exports `buildNpmPackage` as an
# emptyDirectory derivation ("buildNpmPackage-guard") carrying a __functor
# that forwards to its OWN nixpkgs pin's builder. Flattening it would shadow
# nixpkgs' pkgs.buildNpmPackage and break unrelated packages — e.g.
# vaultwarden-webvault (npmDepsFetcherVersion = 3) failed with
# "fetchNpmDeps: fetcher version must be one of: 1, 2." because llm-agents'
# pinned fetchNpmDeps only allows 1 and 2. Real packages never have a
# __functor, so this filter drops such traps generically.
mkLlmAgentsOverlay = system: _final: _prev:
inputs.nixpkgs.lib.filterAttrs (
_: v: inputs.nixpkgs.lib.isDerivation v && !v ? __functor
)
(inputs.llm-agents.packages.${system} or {});
}