Compare commits
	
		
			2 Commits
		
	
	
		
			3ae6725f0e
			...
			aa15afa650
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| aa15afa650 | |||
| f202f8c12c | 
@@ -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";
 | 
			
		||||
 
 | 
			
		||||
@@ -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;
 | 
			
		||||
    }));
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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 = {
 | 
			
		||||
@@ -95,7 +96,6 @@ in
 | 
			
		||||
            datadir = "/mnt/storage/nextcloud";
 | 
			
		||||
            hostName = "cloud.${domain}";
 | 
			
		||||
            https = true;
 | 
			
		||||
            enableBrokenCiphersForSSE = false;
 | 
			
		||||
            config = {
 | 
			
		||||
              extraTrustedDomains = [ "cloud-local.${domain}" ];
 | 
			
		||||
              adminpassFile = config.age.secrets."kelder/nextcloud-root.txt".path;
 | 
			
		||||
 
 | 
			
		||||
@@ -164,6 +164,7 @@ let
 | 
			
		||||
          });
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      rendered = mkOpt' unspecified config'.configuration "Final NixOS modules system output.";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    config = {
 | 
			
		||||
 
 | 
			
		||||
@@ -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, ... }:
 | 
			
		||||
 
 | 
			
		||||
@@ -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;
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user