refactor(scripts): remove unnecessary imports
All checks were successful
/ check (push) Successful in 9s
/ check-renovaterc (push) Successful in 3s
/ build-packages (push) Successful in 13s
/ build-vm (push) Successful in 1s
/ report-size (push) Successful in 4s

They slow down evaluations
This commit is contained in:
Jalil David Salamé Messina 2025-04-21 19:56:24 +02:00
parent 46ba379d08
commit 165c403072
Signed by: jalil
GPG key ID: F016B9E770737A0B
3 changed files with 23 additions and 23 deletions

View file

@ -13,7 +13,7 @@ in
./home-modules.nix
./nixvim-modules.nix
./overlays.nix
./scripts.nix
../scripts
];
perSystem =

View file

@ -1,14 +0,0 @@
let
scripts = import ../scripts;
in
{
# Add scripts to overlay
flake.overlays.scripts = final: prev: scripts final;
# Add scripts to packages
perSystem =
{ pkgs, ... }:
{
packages = scripts pkgs;
};
}

View file

@ -1,23 +1,37 @@
# Autodetects files with a package.nix and calls `callPackage` on them.
#
# Will add a package .#dirname to the flake if it finds a ./dirname/package.nix file.
{ lib, ... }:
let
files = builtins.readDir ./.;
src = ./.;
# Autodetects files with a package.nix and calls `callPackage` on them.
#
# Will add a package .#dirname to the flake if it finds a ./dirname/package.nix file.
files = builtins.readDir src;
isPackage = path: type: (type == "directory") && (builtins.readDir path) ? "package.nix";
toPackage = name: pkgs: {
inherit name;
value = pkgs.callPackage (./. + "/${name}/package.nix") { };
value = pkgs.callPackage "${src}/${name}/package.nix" { };
};
# call pkgs.callPackage on all ./*/package.nix
makePackage =
pkgs: name:
let
type = files.${name};
path = ./. + "/${name}";
path = "${src}/${name}";
package = toPackage name pkgs;
in
# if it is a package then return a package otherwise return no package c:
if isPackage path type then [ package ] else [ ];
# we have lib.filterMapAttrs at home
scripts =
pkgs: builtins.listToAttrs (builtins.concatMap (makePackage pkgs) (builtins.attrNames files));
in
# we have lib.filterMapAttrs at home
pkgs: builtins.listToAttrs (builtins.concatMap (makePackage pkgs) (builtins.attrNames files))
{
# Add scripts to overlay
flake.overlays.scripts = final: scripts;
# Add scripts to packages
perSystem =
{ pkgs, ... }:
{
packages = scripts pkgs;
};
}