chore(lib): prepare for refactoring into clanLib
This commit is contained in:
@@ -1,25 +1,38 @@
|
|||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
clan-core,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
# Produces the
|
||||||
|
# 'clanLib' attribute set
|
||||||
|
# Wrapped with fix, so we can depend on other clanLib functions without passing the whole flake
|
||||||
|
lib.fix (clanLib: {
|
||||||
|
# TODO:
|
||||||
|
# SSome bad lib functions that depend on something in 'self'.
|
||||||
|
# We should reduce the dependency on 'self' aka the 'flake' object
|
||||||
|
# This makes it easier to test
|
||||||
|
# most of the time passing the whole flake is unnecessary
|
||||||
evalClan = import ./eval-clan-modules {
|
evalClan = import ./eval-clan-modules {
|
||||||
inherit clan-core lib;
|
inherit lib;
|
||||||
|
clan-core = self;
|
||||||
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
||||||
};
|
};
|
||||||
in
|
buildClan = import ./build-clan {
|
||||||
{
|
inherit lib nixpkgs;
|
||||||
inherit (evalClan) evalClanModules evalClanModulesWithRoles;
|
clan-core = self;
|
||||||
buildClan = import ./build-clan { inherit lib nixpkgs clan-core; };
|
};
|
||||||
|
inventory = import ./inventory {
|
||||||
|
inherit lib;
|
||||||
|
clan-core = self;
|
||||||
|
};
|
||||||
|
modules = import ./frontmatter {
|
||||||
|
inherit lib self;
|
||||||
|
};
|
||||||
|
# ------------------------------------
|
||||||
|
# Lib functions that don't depend on 'self'
|
||||||
facts = import ./facts.nix { inherit lib; };
|
facts = import ./facts.nix { inherit lib; };
|
||||||
inventory = import ./inventory { inherit lib clan-core; };
|
|
||||||
values = import ./values { inherit lib; };
|
values = import ./values { inherit lib; };
|
||||||
jsonschema = import ./jsonschema { inherit lib; };
|
jsonschema = import ./jsonschema { inherit lib; };
|
||||||
modules = import ./frontmatter {
|
|
||||||
inherit lib;
|
|
||||||
self = clan-core;
|
|
||||||
};
|
|
||||||
select = import ./select.nix;
|
select = import ./select.nix;
|
||||||
}
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user