1
0
Fork 0
nix-system-configurations/nixos/graphical-x86_64/flake-module.nix

57 lines
1.2 KiB
Nix

# SPDX-FileCopyrightText: 2025 Ethan Reece <contact@ethanreece.com>
#
# SPDX-License-Identifier: MIT
#
# https://hoverbear.org/blog/nix-flake-live-media/
{ module-name, ... }:
{
config,
inputs,
lib,
withSystem,
...
}:
{
flake.nixosConfigurations = lib.mkIf config.devices.${module-name}.enable (
let
system = config.devices.${module-name}.system;
in
{
${module-name} = withSystem system (
{ pkgs, ... }:
lib.nixosSystem {
inherit system;
specialArgs = {
inherit
inputs
pkgs
system
module-name
;
flakeConfig = config;
};
modules = [ ./configuration.nix ];
}
);
"iso-${module-name}" = lib.mkIf config.devices.${module-name}.iso (
withSystem system (
{ pkgs, ... }:
lib.nixosSystem {
inherit system;
specialArgs = {
inherit
inputs
pkgs
system
module-name
;
flakeConfig = config;
};
modules = [ ./iso.nix ];
}
)
);
}
);
}