mirror of
https://github.com/denismhz/flake.git
synced 2025-11-10 00:33:34 +01:00
- KoboldAI is no longer upstream maintained, so is now deprecated in nixified.ai - InvokeAI: v2.3.1.post2 -> v3.3.0post3 - textgen: init at v1.7 - treewide: update flake inputs including nixpkgs - treewide: add a bunch of new dependencies and upgrade old ones
40 lines
1.3 KiB
Nix
40 lines
1.3 KiB
Nix
lib: _: {
|
|
overlays = {
|
|
runOverlay = do: final: prev: do {
|
|
inherit final prev;
|
|
util = {
|
|
callPackageOrTuple = input:
|
|
if lib.isList input then
|
|
assert lib.length input == 2; let
|
|
pkg = lib.head input;
|
|
args = lib.last input;
|
|
in final.callPackage pkg args
|
|
else
|
|
final.callPackage input { };
|
|
};
|
|
};
|
|
|
|
callManyPackages = packages: lib.overlays.runOverlay ({ util, ... }:
|
|
let
|
|
packages' = lib.listToAttrs (map (x: lib.nameValuePair (baseNameOf x) x) packages);
|
|
in
|
|
lib.mapAttrs (lib.const util.callPackageOrTuple) packages'
|
|
);
|
|
|
|
applyOverlays = packageSet: overlays: let
|
|
combinedOverlay = lib.composeManyExtensions overlays;
|
|
in
|
|
# regular extensible package set
|
|
if packageSet ? extend then
|
|
packageSet.extend combinedOverlay
|
|
# makeScope-style package set, this case needs to be handled before makeScopeWithSplicing
|
|
else if packageSet ? overrideScope' then
|
|
packageSet.overrideScope' combinedOverlay
|
|
# makeScopeWithSplicing-style package set
|
|
else if packageSet ? overrideScope then
|
|
packageSet.overrideScope combinedOverlay
|
|
else
|
|
throw "don't know how to extend the given package set";
|
|
};
|
|
}
|