2025-09-19 16:28:48 +03:00
|
|
|
{ lib, newScope }:
|
|
|
|
|
let
|
|
|
|
|
dirToAttrs = import ../lib/dirToAttrs.nix { inherit lib; };
|
|
|
|
|
in
|
|
|
|
|
lib.makeScope newScope (
|
|
|
|
|
self:
|
2026-02-27 18:26:41 +02:00
|
|
|
let
|
|
|
|
|
callPackage =
|
|
|
|
|
fun: overrides:
|
|
|
|
|
let
|
|
|
|
|
result = self.callPackage fun overrides;
|
|
|
|
|
in
|
|
|
|
|
result // { override = result.__originalOverride or result.override; };
|
|
|
|
|
in
|
2025-09-19 16:28:48 +03:00
|
|
|
dirToAttrs ./.
|
|
|
|
|
[
|
|
|
|
|
(
|
|
|
|
|
path: fname: _:
|
|
|
|
|
if fname == "default.nix" then null else lib.strings.removeSuffix ".nix" fname
|
|
|
|
|
)
|
|
|
|
|
]
|
|
|
|
|
(
|
|
|
|
|
name: fpath: typ:
|
|
|
|
|
if typ == "regular" then
|
2026-02-27 18:26:41 +02:00
|
|
|
callPackage fpath { }
|
2025-09-19 16:28:48 +03:00
|
|
|
else if typ == "directory" && builtins.pathExists (fpath + "/package.nix") then
|
2026-02-27 18:26:41 +02:00
|
|
|
callPackage (fpath + "/package.nix") { }
|
2025-09-19 16:28:48 +03:00
|
|
|
else
|
|
|
|
|
null
|
|
|
|
|
)
|
|
|
|
|
)
|