mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-11-13 12:13:46 +01:00
lib/genMicrovmGuestModule.nix: qemu guest with a shared read-only store (virtiofs), persistent /etc, /var and /home volumes, a tap on br0 (its name derived from the guest IP, as IFNAMSIZ caps it at 15 chars), and a deterministic MAC. Also keep lib/*.nix tracked.
32 lines
996 B
Nix
32 lines
996 B
Nix
{ lib, ... }:
|
|
{
|
|
colmenaSystem = import ./colmenaSystem.nix;
|
|
macosSystem = import ./macosSystem.nix;
|
|
nixosSystem = import ./nixosSystem.nix;
|
|
|
|
attrs = import ./attrs.nix { inherit lib; };
|
|
|
|
genK3sServerModule = import ./genK3sServerModule.nix;
|
|
genK3sAgentModule = import ./genK3sAgentModule.nix;
|
|
genKubeVirtHostModule = import ./genKubeVirtHostModule.nix;
|
|
genKubeVirtGuestModule = import ./genKubeVirtGuestModule.nix;
|
|
genMicrovmGuestModule = import ./genMicrovmGuestModule.nix;
|
|
|
|
# use path relative to the root of the project
|
|
relativeToRoot = lib.path.append ../.;
|
|
scanPaths =
|
|
path:
|
|
builtins.map (f: (path + "/${f}")) (
|
|
builtins.attrNames (
|
|
lib.attrsets.filterAttrs (
|
|
path: _type:
|
|
(_type == "directory") # include directories
|
|
|| (
|
|
(path != "default.nix") # ignore default.nix
|
|
&& (lib.strings.hasSuffix ".nix" path) # include .nix files
|
|
)
|
|
) (builtins.readDir path)
|
|
)
|
|
);
|
|
}
|