refactor: complete overhaul

This commit is contained in:
Nick 2024-11-10 01:29:37 -06:00
parent fb3e6fed86
commit 0541b3d61f
154 changed files with 936 additions and 904 deletions

View file

@ -1,31 +1,46 @@
{flake, ...}: let
aggregatedSearchEngines =
configPath = ./config;
flakedPath = configPath + "/flake";
regularSearchEngines = let
files = builtins.attrNames (builtins.readDir configPath);
in
builtins.foldl' (
emptySet: searchEngine:
emptySet // (import ./${searchEngine}.nix)
) {} [
"academic"
"development"
"gaming"
"hidden"
"shopping"
"socialMedia"
"spank"
"tools"
"tracking"
"web"
]
// builtins.foldl' (
emptySet // (import (configPath + "/${searchEngine}"))
) {} (builtins.filter (name: builtins.match ".*\\.nix$" name != null) files);
flakedSearchEngines = let
files = builtins.attrNames (builtins.readDir flakedPath);
in
builtins.foldl' (
emptySet: searchEngine:
emptySet // (import ./${searchEngine}.nix {inherit flake;})
) {} [
"selfHosted"
];
emptySet // (import (flakedPath + "/${searchEngine}") {inherit flake;})
) {} (builtins.filter (name: builtins.match ".*\\.nix$" name != null) files);
aggregatedSearchEngines = regularSearchEngines // flakedSearchEngines;
in {
search = {
force = true;
default = "Kagi";
engines = aggregatedSearchEngines;
order = import ./order.nix;
order = [
"AlternativeTo"
"Core Radio"
"Hackage"
"Hoogle"
"Jellyfin"
"Kagi"
"Nix Home Manager"
"Nix Options"
"Nix Packages"
"Nix Wiki"
"PeerTube"
"Sci-Hub"
"Torrent Leech"
"Urban Dictionary"
"Wikipedia"
"YouTube"
];
};
}