From be924bcb27432d1e3293a12be5675f849bfe3afc Mon Sep 17 00:00:00 2001 From: David Arnold Date: Sat, 17 Apr 2021 21:29:45 -0500 Subject: [PATCH] ref: reduce exposure to callLibs for clarity's sake, expose which function uses final and prev, so that people can have a clearer understanding how they relate to each other in terms of dependencies. also a simple `{ lib = final; }` probably does not warrant a complete callLibs obscurization. --- lib/attrs.nix | 2 +- lib/devos/default.nix | 2 +- lib/flake.nix | 18 ++++++++++++------ lib/lists.nix | 2 +- lib/pkgs-lib/default.nix | 2 +- lib/strings.nix | 2 +- 6 files changed, 17 insertions(+), 11 deletions(-) diff --git a/lib/attrs.nix b/lib/attrs.nix index 50c72d22..1ecc2544 100644 --- a/lib/attrs.nix +++ b/lib/attrs.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib }: rec { # mapFilterAttrs :: # (name -> value -> bool ) diff --git a/lib/devos/default.nix b/lib/devos/default.nix index fb9e990f..a8ecd940 100644 --- a/lib/devos/default.nix +++ b/lib/devos/default.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib }: { # pkgImport :: Nixpkgs -> Overlays -> System -> Pkgs pkgImport = nixpkgs: overlays: system: diff --git a/lib/flake.nix b/lib/flake.nix index 506fdb2d..1810b1b8 100644 --- a/lib/flake.nix +++ b/lib/flake.nix @@ -21,14 +21,17 @@ let callLibs = file: import file ({ lib = final; - userFlakeInputs = {}; # TODO: Erm, this must become a proper argument to mkFlake + userFlakeNixos = {}; + userFlakeSelf = {}; + userFlakeInputs = {}; # TODO: Erm, theese must become proper arguments to mkFlake } // inputs); in with final; let - attrs = callLibs ./attrs.nix; - lists = callLibs ./lists.nix; - strings = callLibs ./strings.nix; + + attrs = import ./attrs.nix { lib = prev; }; + lists = import ./lists.nix { lib = prev; }; + strings = import ./strings.nix { lib = prev; }; in utils.lib @@ -38,7 +41,7 @@ { inherit callLibs; - os = callLibs ./devos; + os = import ./devos { lib = final; }; mkFlake = { __functor = callLibs ./mkFlake; @@ -46,7 +49,10 @@ evalOldArgs = callLibs ./mkFlake/evalOldArgs.nix; }; - pkgs-lib = callLibs ./pkgs-lib; + pkgs-lib = import ./pkgs-lib { + lib = final; + inherit nixpkgs deploy devshell; + }; inherit (attrs) mapFilterAttrs genAttrs' safeReadDir pathsToImportedAttrs concatAttrs filterPackages; diff --git a/lib/lists.nix b/lib/lists.nix index 74cf9bd4..18620412 100644 --- a/lib/lists.nix +++ b/lib/lists.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib }: { pathsIn = dir: let diff --git a/lib/pkgs-lib/default.nix b/lib/pkgs-lib/default.nix index d2dde9b0..a298d411 100644 --- a/lib/pkgs-lib/default.nix +++ b/lib/pkgs-lib/default.nix @@ -1,4 +1,4 @@ -args@{ lib, nixpkgs, ... }: +args@{ lib, nixpkgs, deploy, devshell }: lib.genAttrs lib.defaultSystems (system: lib.makeExtensible (final: let diff --git a/lib/strings.nix b/lib/strings.nix index 56a0861d..d411bab8 100644 --- a/lib/strings.nix +++ b/lib/strings.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib }: { # returns matching part of _regex_ _string_; null indicates failure. rgxToString = regex: string: