From e713fe3b2c8c42ce128f9cfec202f01c1fa93f1e Mon Sep 17 00:00:00 2001 From: Katherina Walshe-Grey Date: Wed, 18 Sep 2024 19:38:20 +0100 Subject: [PATCH] nix, home-manager: move common config out of flake.nix --- common/default.nix | 1 + common/nix.nix | 7 +++++++ common/users/qenya.nix | 4 +++- flake.nix | 32 ++++++++++---------------------- 4 files changed, 21 insertions(+), 23 deletions(-) create mode 100644 common/nix.nix diff --git a/common/default.nix b/common/default.nix index fd0791c..a1f43a4 100644 --- a/common/default.nix +++ b/common/default.nix @@ -6,6 +6,7 @@ ./environment.nix ./home-manager.nix ./nginx.nix + ./nix.nix ./openssh.nix ./security.nix ./steam.nix diff --git a/common/nix.nix b/common/nix.nix new file mode 100644 index 0000000..9361188 --- /dev/null +++ b/common/nix.nix @@ -0,0 +1,7 @@ +{ config, lib, pkgs, ... }: + +{ + nix.settings.experimental-features = "nix-command flakes"; + nix.nixPath = [ "nixpkgs=flake:nixpkgs" ]; + nixpkgs.config.allowUnfree = true; +} diff --git a/common/users/qenya.nix b/common/users/qenya.nix index e9d11ad..6e96e58 100644 --- a/common/users/qenya.nix +++ b/common/users/qenya.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }: +{ config, lib, pkgs, inputs, ... }: let keys = import ../../keys.nix; in { @@ -11,4 +11,6 @@ in { }; programs.zsh.enable = true; + + home-manager.users."qenya" = inputs.self.homeManagerModules."qenya"; } diff --git a/flake.nix b/flake.nix index 928ad7e..50a5c8a 100644 --- a/flake.nix +++ b/flake.nix @@ -34,27 +34,6 @@ }; outputs = inputs@{ self, nixpkgs, nixpkgsSmall, home-manager, plasma-manager, nur, agenix, colmena, birdsong, ... }: { - nixosModules.default = { - nix.settings.experimental-features = "nix-command flakes"; - nix.nixPath = [ "nixpkgs=flake:nixpkgs" ]; - nixpkgs.config.allowUnfree = true; - - nixpkgs.overlays = [ nur.overlay ]; - - # TODO: make this or something like it work without infinite recursion - # home-manager.users."qenya" = lib.mkIf (config.users.users ? "qenya") self.homeManagerModules."qenya"; - home-manager.users."qenya" = self.homeManagerModules."qenya"; - - imports = [ - home-manager.nixosModules.home-manager - nur.nixosModules.nur - agenix.nixosModules.default - birdsong.nixosModules.default - ./common - ./services - ]; - }; - nixosConfigurations = (colmena.lib.makeHive self.outputs.colmena).nodes; # The name of this output type is not standardised. I have picked @@ -85,7 +64,16 @@ specialArgs = { inherit inputs; }; }; - defaults.imports = [ self.nixosModules.default ]; + defaults.imports = [ + home-manager.nixosModules.home-manager + nur.nixosModules.nur + { nixpkgs.overlays = [ nur.overlay ]; } + agenix.nixosModules.default + birdsong.nixosModules.default + ./common + ./services + ]; + kilgharrah.imports = [ ./hosts/kilgharrah ]; tohru.imports = [ ./hosts/tohru ]; yevaud.imports = [ ./hosts/yevaud ];