Merge pull request 'Expose all clanServices/<subfolder>/flake-module.nix' (#3874) from auto-import-all-services into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3874
This commit is contained in:
@@ -1,18 +1,21 @@
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./admin/flake-module.nix
|
||||
./deltachat/flake-module.nix
|
||||
./ergochat/flake-module.nix
|
||||
./garage/flake-module.nix
|
||||
./heisenbridge/flake-module.nix
|
||||
./importer/flake-module.nix
|
||||
./localsend/flake-module.nix
|
||||
./mycelium/flake-module.nix
|
||||
./auto-upgrade/flake-module.nix
|
||||
./hello-world/flake-module.nix
|
||||
./wifi/flake-module.nix
|
||||
./borgbackup/flake-module.nix
|
||||
./zerotier/flake-module.nix
|
||||
];
|
||||
imports =
|
||||
let
|
||||
# Get all subdirectories in the current directory
|
||||
dirContents = builtins.readDir ./.;
|
||||
|
||||
# Filter to include only directories that have a flake-module.nix file
|
||||
# and exclude special directories like 'result'
|
||||
validModuleDirs = builtins.filter (
|
||||
name:
|
||||
name != "result"
|
||||
&& dirContents.${name} == "directory"
|
||||
&& builtins.pathExists (./. + "/${name}/flake-module.nix")
|
||||
) (builtins.attrNames dirContents);
|
||||
|
||||
# Create import paths for each valid directory
|
||||
imports = map (name: ./. + "/${name}/flake-module.nix") validModuleDirs;
|
||||
in
|
||||
imports;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user