nichts/default.nix
Bloxx12 0a37fb5863
default.nix: cleanup
Signed-off-by: Bloxx12 <charlie@charlieroot.dev>
Change-Id: I6a6a6964349f8e23a87c2c0c9ab0d949d1bb92ad
2025-07-19 23:53:13 +02:00

37 lines
1.1 KiB
Nix

let
inherit (builtins) currentSystem filter mapAttrs;
# https://github.com/andir/npins?tab=readme-ov-file#using-the-nixpkgs-fetchers
src = import ./npins;
pkgs = import src.nixpkgs {};
sources = mapAttrs (k: v: v {inherit pkgs;}) src;
inherit (pkgs) lib;
inherit (lib.filesystem) listFilesRecursive;
inherit (lib.strings) hasSuffix;
mkSystem = system: hostname:
import (src.nixpkgs + "/nixos/lib/eval-config.nix") {
specialArgs = {
inherit sources;
self = ./.;
};
modules =
[
# This is used to pre-emptively set the hostPlatform for nixpkgs.
# Also, we set the system hostname here.
{
networking.hostName = hostname;
nixpkgs.hostPlatform = system;
}
./hosts/common.nix
./hosts/${hostname}
]
++ ((listFilesRecursive ./modules)
|> filter (hasSuffix ".mod.nix"));
};
in {
temperance = mkSystem "x86_64-linux" "temperance";
hermit = mkSystem "x86_64-linux" "hermit";
tower = mkSystem "aarch64-linux" "tower";
}