diff --git a/formats/minimal-iso.nix b/configuration.nix similarity index 59% rename from formats/minimal-iso.nix rename to configuration.nix index 79408ca..81488fa 100644 --- a/formats/minimal-iso.nix +++ b/configuration.nix @@ -1,25 +1,22 @@ { - modulesPath, - inputs', + inputs, + pkgs, lib, ... }: { - imports = [ "${modulesPath}/installer/cd-dvd/installation-cd-minimal.nix" ]; - nix.settings.experimental-features = [ "pipe-operators" ]; networking.hostName = "installer"; - formatAttr = "isoImage"; - fileExtension = ".iso"; - - services.openssh.enable = lib.mkForce false; - networking.wireless.enable = false; - console.keyMap = "de-latin1-nodeadkeys"; - environment.systemPackages = [ inputs'.disko.packages.default ]; + services.openssh.enable = lib.mkForce false; + + networking.wireless.enable = false; + networking.networkmanager.enable = true; + + environment.systemPackages = [ inputs.disko.packages.${pkgs.system}.default ]; services.tailscale = { enable = true; @@ -27,6 +24,6 @@ extraUpFlags = [ "--ssh" ]; # Ephemeral + not pre-approved - authKeyFile = ../tailscale-auth-key.dec; + authKeyFile = ./tailscale-auth-key.dec; }; } diff --git a/flake.nix b/flake.nix index 46220f9..31941a8 100644 --- a/flake.nix +++ b/flake.nix @@ -25,10 +25,34 @@ flake-parts.lib.mkFlake { inherit inputs; } { systems = [ "x86_64-linux" ]; - imports = [ - ./flake/dev-shells.nix - ./flake/formatter.nix - ./flake/image-generators.nix - ]; + perSystem = + { system, pkgs, ... }: + { + packages = { + iso = inputs.nixos-generators.nixosGenerate { + format = "install-iso"; + inherit system; + specialArgs = { inherit inputs; }; + modules = [ ./configuration.nix ]; + }; + }; + + devShells.default = pkgs.mkShell { + packages = [ + pkgs.sops + pkgs.age + ]; + }; + + formatter = + (inputs.treefmt-nix.lib.evalModule pkgs { + projectRootFile = "flake.nix"; + programs = { + nixfmt.enable = true; + prettier.enable = true; + just.enable = true; + }; + }).config.build.wrapper; + }; }; } diff --git a/flake/dev-shells.nix b/flake/dev-shells.nix deleted file mode 100644 index 6b03113..0000000 --- a/flake/dev-shells.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ - perSystem = - { pkgs, ... }: - { - devShells.default = pkgs.mkShell { - packages = [ - pkgs.sops - pkgs.age - ]; - }; - }; -} diff --git a/flake/formatter.nix b/flake/formatter.nix deleted file mode 100644 index cdccc7b..0000000 --- a/flake/formatter.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ inputs, ... }: -{ - perSystem = - { pkgs, ... }: - { - formatter = - (inputs.treefmt-nix.lib.evalModule pkgs { - projectRootFile = "flake.nix"; - programs = { - nixfmt.enable = true; - prettier.enable = true; - just.enable = true; - }; - }).config.build.wrapper; - }; -} diff --git a/flake/image-generators.nix b/flake/image-generators.nix deleted file mode 100644 index 5f61088..0000000 --- a/flake/image-generators.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ inputs, self, ... }: -{ - perSystem = - { - system, - inputs', - lib, - ... - }: - { - packages = - let - mkImage = - { - name, - format, - config ? { }, - }: - { - ${name} = inputs.nixos-generators.nixosGenerate { - customFormats.minimal-iso = "${self}/formats/minimal-iso.nix"; - inherit system format; - specialArgs = { inherit inputs'; }; - modules = [ - { isoImage.isoBaseName = name; } - config - ]; - }; - }; - in - lib.mkMerge [ - - (mkImage { - name = "minimal"; - format = "minimal-iso"; - }) - - (mkImage { - name = "minimal-wlan"; - format = "minimal-iso"; - config = { - networking.networkmanager.enable = true; - }; - }) - - ]; - }; -}