Update nixosConfigurations to reference a preferred default config

This commit is contained in:
Jack O'Sullivan 2023-11-16 21:42:30 +00:00
parent 3ae6725f0e
commit f202f8c12c
14 changed files with 32 additions and 22 deletions

View File

@ -89,7 +89,7 @@ in
name = "build-iso";
category = "tasks";
help = "Build NixOS configuration into an ISO";
command = ''nix build "''${@:2}" ".#nixosConfigurations.\"$1\".config.my.buildAs.iso"'';
command = ''nix build "''${@:2}" ".#nixfiles.config.nixos.systems.\"$1\".configuration.config.my.buildAs.iso"'';
}
{
name = "build-home";

View File

@ -153,7 +153,7 @@
nixosModules = nixfiles.config.nixos.modules;
homeModules = nixfiles.config.home-manager.modules;
nixosConfigurations = mapAttrs (_: s: s.configuration) nixfiles.config.nixos.systems;
nixosConfigurations = mapAttrs (_: s: s.rendered) nixfiles.config.nixos.systems;
homeConfigurations = mapAttrs (_: s: s.configuration) nixfiles.config.home-manager.homes;
deploy = nixfiles.config.deploy-rs.rendered;
@ -199,6 +199,5 @@
packages = flattenTree (import ./pkgs { inherit lib pkgs; });
devShells.default = shell;
devShell = shell;
}));
}

View File

@ -5,9 +5,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.chatterbox = {
nixos.systems.chatterbox = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.colony-psql = {
nixos.systems.colony-psql = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.jackflix = {
nixos.systems.jackflix = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -5,9 +5,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.middleman = {
nixos.systems.middleman = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.object = {
nixos.systems.object = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.toot = {
nixos.systems.toot = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.colony) domain prefixes;
in
{
nixos.systems.vaultwarden = {
nixos.systems.vaultwarden = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -4,9 +4,10 @@ let
inherit (lib.my.c.kelder) domain prefixes;
in
{
nixos.systems.kelder-acquisition = {
nixos.systems.kelder-acquisition = { config, ...}: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -5,9 +5,10 @@ let
inherit (lib.my.c.kelder) domain prefixes;
in
{
nixos.systems.kelder-spoder = {
nixos.systems.kelder-spoder = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "mine";
rendered = config.configuration.config.my.asContainer;
assignments = {
internal = {

View File

@ -164,6 +164,7 @@ let
});
};
};
rendered = mkOpt' unspecified config'.configuration "Final NixOS modules system output.";
};
config = {

View File

@ -1,8 +1,9 @@
{
nixos.systems.installer = {
nixos.systems.installer = { config, ... }: {
system = "x86_64-linux";
nixpkgs = "unstable";
docCustom = false;
rendered = config.configuration.config.my.asISO;
configuration =
{ lib, pkgs, modulesPath, config, ... }:

View File

@ -1,4 +1,4 @@
{ lib, pkgs, extendModules, modulesPath, baseModules, options, config, ... }:
{ lib, pkgs, extendModules, modulesPath, options, config, ... }:
let
inherit (lib) recursiveUpdate mkOption mkDefault mkIf mkMerge flatten optional;
inherit (lib.my) mkBoolOpt' dummyOption;
@ -43,15 +43,15 @@ let
];
};
mkAsOpt = ext: desc: mkOption {
inherit (ext) type;
default = { };
mkAsOpt = ext: desc: with lib.types; mkOption {
type = unspecified;
default = ext;
visible = "shallow";
description = "Configuration as ${desc}.";
};
in
{
options = with lib.types; {
options = {
my = {
build = {
isDevVM = mkBoolOpt' false "Whether the system is a development VM.";
@ -92,10 +92,10 @@ in
my = {
buildAs = {
# The meta.mainProgram should probably be set upstream but oh well...
devVM = recursiveUpdate config.my.asDevVM.system.build.vm { meta.mainProgram = "run-${config.system.name}-vm"; };
iso = config.my.asISO.system.build.isoImage;
container = config.my.asContainer.system.build.toplevel;
kexecTree = config.my.asKexecTree.system.build.kexecTree;
devVM = recursiveUpdate config.my.asDevVM.config.system.build.vm { meta.mainProgram = "run-${config.system.name}-vm"; };
iso = config.my.asISO.config.system.build.isoImage;
container = config.my.asContainer.config.system.build.toplevel;
kexecTree = config.my.asKexecTree.config.system.build.kexecTree;
};
};
};