added home-manager modules as an output in flake.nix, allowing for machine-specific home-manager configs

This commit is contained in:
pagedmov
2024-11-01 21:30:26 -04:00
parent e035de79e4
commit 08bed40c52
8 changed files with 45 additions and 53 deletions

View File

@@ -67,6 +67,8 @@
) {} ) {}
colors; colors;
in { in {
homeManagerModules.default = ./modules/home/default.nix;
nixosConfigurations = { nixosConfigurations = {
oganesson = nixpkgs.lib.nixosSystem { oganesson = nixpkgs.lib.nixosSystem {
specialArgs = { specialArgs = {
@@ -75,8 +77,8 @@
}; };
inherit system; inherit system;
modules = [ modules = [
./hosts/desktop ./hosts/desktop/config.nix
./modules ./modules/sys
stylix.nixosModules.stylix stylix.nixosModules.stylix
nixvim.nixosModules.nixvim nixvim.nixosModules.nixvim
nur.nixosModules.nur nur.nixosModules.nur
@@ -89,8 +91,8 @@
inherit self inputs scheme wallpaper username; inherit self inputs scheme wallpaper username;
}; };
modules = [ modules = [
./hosts/laptop ./hosts/laptop/config.nix
./modules ./modules/sys
stylix.nixosModules.stylix stylix.nixosModules.stylix
nixvim.nixosModules.nixvim nixvim.nixosModules.nixvim
nur.nixosModules.nur nur.nixosModules.nur

View File

@@ -1,7 +1,10 @@
{pkgs, ...}: { {pkgs, ...}: {
system.stateVersion = "24.05"; system.stateVersion = "24.05";
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
imports = [ ./hardware.nix ]; imports = [
./hardware.nix
./home.nix
];
nix = { nix = {
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;

View File

@@ -5,12 +5,12 @@
inputs, inputs,
username, username,
wallpaper, wallpaper,
lib,
scheme, scheme,
config, config,
... ...
}: let }: let
nur = config.nur; nur = config.nur;
desktop = (host == "oganesson");
in { in {
imports = [inputs.home-manager.nixosModules.home-manager]; imports = [inputs.home-manager.nixosModules.home-manager];
home-manager = { home-manager = {
@@ -18,18 +18,19 @@ in {
useGlobalPkgs = true; useGlobalPkgs = true;
backupFileExtension = "backup"; backupFileExtension = "backup";
extraSpecialArgs = {inherit self inputs host wallpaper scheme username nur;}; extraSpecialArgs = {inherit self inputs host wallpaper scheme username nur;};
users.${username} = { users = {
dconf.settings = if desktop then { ${username} = {
imports = [
inputs.spicetify-nix.homeManagerModules.default
inputs.self.outputs.homeManagerModules.default
];
dconf.settings = lib.mkIf config.virtOpts.enable {
"org/virt-manager/virt-manager/connections" = { "org/virt-manager/virt-manager/connections" = {
autoconnect = ["qemu:///system"]; autoconnect = ["qemu:///system"];
uris = ["qemu:///system"]; uris = ["qemu:///system"];
}; };
} else {}; };
programs.home-manager.enable = true; programs.home-manager.enable = true;
imports = [
inputs.spicetify-nix.homeManagerModules.default
./hm-modules.nix
];
home = { home = {
username = "${username}"; username = "${username}";
homeDirectory = "/home/${username}"; homeDirectory = "/home/${username}";
@@ -37,6 +38,7 @@ in {
}; };
}; };
}; };
};
users = { users = {
groups.persist = {}; groups.persist = {};

View File

@@ -1,31 +0,0 @@
{
inputs,
nixpkgs,
config,
self,
username,
host,
lib,
...
}: {
imports = [
./sys/hardware
./sys/software
./sys/environment
./home/home-manager.nix
];
networkModule.enable = lib.mkDefault true;
nixSettings.enable = lib.mkDefault true;
bootLoader.enable = lib.mkDefault true;
issue.enable = lib.mkDefault true;
sddmOpts.enable = lib.mkDefault true;
stylixOpts.enable = lib.mkDefault true;
gamingPkgs.enable = lib.mkDefault true;
steamOpts.enable = lib.mkDefault true;
sysPkgs.enable = lib.mkDefault true;
sysProgs.enable = lib.mkDefault true;
sysServices.enable = lib.mkDefault true;
virtOpts.enable = lib.mkDefault true;
powerProfiles.enable = lib.mkDefault false;
}

View File

@@ -5,12 +5,26 @@
self, self,
username, username,
host, host,
lib,
... ...
}: { }: {
imports = [ imports = [
./hardware ./hardware
./software ./software
./environment ./environment
../home/home-manager.nix
]; ];
networkModule.enable = lib.mkDefault true;
nixSettings.enable = lib.mkDefault true;
bootLoader.enable = lib.mkDefault true;
issue.enable = lib.mkDefault true;
sddmOpts.enable = lib.mkDefault true;
stylixOpts.enable = lib.mkDefault true;
gamingPkgs.enable = lib.mkDefault true;
steamOpts.enable = lib.mkDefault true;
sysPkgs.enable = lib.mkDefault true;
sysProgs.enable = lib.mkDefault true;
sysServices.enable = lib.mkDefault true;
virtOpts.enable = lib.mkDefault true;
powerProfiles.enable = lib.mkDefault false;
} }

View File

@@ -11,5 +11,6 @@
imports = imports =
[(import ./sddm.nix)] [(import ./sddm.nix)]
++ [(import ./issue.nix)] ++ [(import ./issue.nix)]
++ [(import ./nix.nix)]
++ [(import ./stylix.nix)]; ++ [(import ./stylix.nix)];
} }

View File

@@ -49,3 +49,4 @@
}; };
}; };
}; };
}