diff --git a/flake.nix b/flake.nix index ecaf906..d824430 100644 --- a/flake.nix +++ b/flake.nix @@ -23,14 +23,13 @@ pkgs = inputs.nixpkgs.legacyPackages.${system}; pkgs-unstable = inputs.unstable.legacyPackages.${system}; nixgl = inputs.nixgl.packages.${system}; - osConfig = name: nixpkgs.lib.nixosSystem { + sshKeys = (import ./sshKeys.nix); + osConfig = modules: nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs; }; - modules = [ - ./os/${name}/configuration.nix - ]; + inherit modules; }; homeConfig = modules: inputs.home-manager.lib.homeManagerConfiguration { inherit pkgs; @@ -92,10 +91,46 @@ ./home/moon.nix ]; - nixosConfigurations.basado = osConfig "basado"; - nixosConfigurations.moon = osConfig "moon"; - nixosConfigurations.hs = osConfig "hs"; - nixosConfigurations.ks = osConfig "ks"; + nixosConfigurations.basado = osConfig [ + ./os/basado/configuration.nix + ./os/basado/hardware-configuration.nix + + ./os/common.nix + ./os/common-graphics.nix + (import ./os/remote-disk-unlock.nix ["igb"] (with sshKeys; [moon])) + ./os/builder.nix + ./os/kdeconnect-ports.nix + (import ./os/swapfile.nix 64) + ./os/ccache.nix + ]; + nixosConfigurations.moon = osConfig [ + ./os/moon/configuration.nix + ./os/moon/hardware-configuration.nix + + ./os/common.nix + ./os/common-graphics.nix + ./os/kdeconnect-ports.nix + ]; + nixosConfigurations.hs = osConfig [ + ./os/hs/configuration.nix + ./os/hs/hardware-configuration.nix + ./os/hs/syncthing.nix + ./os/hs/disks.nix + ./os/hs/backup.nix + + ./os/common.nix + ./os/forgejo.nix + (import ./os/remote-disk-unlock.nix ["r8169"] (with sshKeys; [moon basado])) + ./os/builder.nix + ./os/ccache.nix + (import ./os/swapfile.nix 64) + ]; + nixosConfigurations.ks = osConfig [ + ./os/ks/configuration.nix + ./os/ks/hardware-configuration.nix + ./os/common.nix + ./os/3proxy.nix + ]; build-all = pkgs.runCommand "build-all" { buildInputs = diff --git a/os/basado/configuration.nix b/os/basado/configuration.nix index 57279cd..c26ecd9 100644 --- a/os/basado/configuration.nix +++ b/os/basado/configuration.nix @@ -1,20 +1,5 @@ { config, pkgs, ... }: -let sshKeys = with (import ../../sshKeys.nix); [ - moon -]; -in { - imports = [ - ./hardware-configuration.nix - ../common.nix - ../common-graphics.nix - (import ../remote-disk-unlock.nix ["igb"] sshKeys) - ../builder.nix - ../kdeconnect-ports.nix - (import ../swapfile.nix 64) - ../ccache.nix - ]; - boot.loader = { grub = { enable = true; diff --git a/os/hs/configuration.nix b/os/hs/configuration.nix index 7806ad4..dc5bac3 100644 --- a/os/hs/configuration.nix +++ b/os/hs/configuration.nix @@ -1,28 +1,10 @@ { config, pkgs, ... }: let - sshKeys = with (import ../../sshKeys.nix); [ - basado - moon - allegro - hs - ]; + sshKeys = import ../../sshKeys.nix; domain = "antoinev.freeboxos.fr"; utils = import ../utils.nix; in { - imports = [ - ./hardware-configuration.nix - ./syncthing.nix - ./disks.nix - ./backup.nix - ../common.nix - ../forgejo.nix - (import ../remote-disk-unlock.nix ["r8169"] sshKeys) - ../builder.nix - ../ccache.nix - (import ../swapfile.nix 64) - ]; - boot = { loader.systemd-boot.enable = true; loader.efi.canTouchEfiVariables = true; @@ -49,7 +31,7 @@ in { "wheel" "jellyfin" ]; - openssh.authorizedKeys.keys = sshKeys; + openssh.authorizedKeys.keys = (with sshKeys; [ basado moon allegro hs ]); }; security.sudo.wheelNeedsPassword = false; diff --git a/os/ks/configuration.nix b/os/ks/configuration.nix index 9b02554..506f0b0 100644 --- a/os/ks/configuration.nix +++ b/os/ks/configuration.nix @@ -6,9 +6,6 @@ let sshKeys = (import ../../sshKeys.nix); in { imports = [ - ./hardware-configuration.nix - ../common.nix - ../3proxy.nix inputs.simple-nixos-mailserver.nixosModule ]; diff --git a/os/moon/configuration.nix b/os/moon/configuration.nix index ab69bd8..f347075 100644 --- a/os/moon/configuration.nix +++ b/os/moon/configuration.nix @@ -1,12 +1,5 @@ { config, pkgs, ... }: { - imports = [ # Include the results of the hardware scan. - ./hardware-configuration.nix - ../common.nix - ../common-graphics.nix - ../kdeconnect-ports.nix - ]; - # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true;