users: let user module handle home-manager init

This commit is contained in:
Christoph Hollizeck 2025-12-02 13:54:41 +01:00
parent 56da328707
commit cc2a9e991b
Signed by: Daholli
GPG key ID: 249300664F2AF2C7
6 changed files with 90 additions and 120 deletions

View file

@ -19,45 +19,27 @@ topLevel: {
# TODO: dunno why I need this packge # TODO: dunno why I need this packge
environment.systemPackages = [ pkgs.dconf ]; environment.systemPackages = [ pkgs.dconf ];
imports = imports = with topLevel.config.flake.modules.nixos; [
with topLevel.config.flake.modules.nixos; (modulesPath + "/profiles/qemu-guest.nix")
[ inputs.catppuccin.nixosModules.catppuccin
(modulesPath + "/profiles/qemu-guest.nix")
inputs.catppuccin.nixosModules.catppuccin
# System modules # System modules
base base
server server
loptland-acme loptland-acme
hydra hydra
forgejo forgejo
forgejo-runner forgejo-runner
# game server # game server
minecraft-server minecraft-server
factorio-server factorio-server
# apps # apps
# Users # Users
cholli cholli
] ];
++ [
{
home-manager.users.cholli = {
imports = with topLevel.config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
# Activate all user based config
cholli
];
};
}
];
services.tailscale = { services.tailscale = {
enable = true; enable = true;

View file

@ -52,24 +52,6 @@ topLevel: {
server server
cholli cholli
]
++ [
{
home-manager.users.cholli = {
imports = with topLevel.config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
# Activate all user based config
cholli
];
# https://github.com/NixOS/nixpkgs/pull/398456
home.enableNixpkgsReleaseCheck = false;
};
}
]; ];
services.tailscale = { services.tailscale = {

View file

@ -12,31 +12,14 @@ topLevel: {
}; };
programs.dconf.enable = true; programs.dconf.enable = true;
imports = imports = with topLevel.config.flake.modules.nixos; [
with topLevel.config.flake.modules.nixos; inputs.nixos-wsl.nixosModules.default
[
inputs.nixos-wsl.nixosModules.default
base base
server server
cholli cholli
] ];
++ [
{
home-manager.users.cholli = {
imports = with topLevel.config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
# Activate all user based config
cholli
];
};
}
];
wsl = { wsl = {
enable = true; enable = true;
defaultUser = topLevel.config.flake.meta.users.cholli.username; defaultUser = topLevel.config.flake.meta.users.cholli.username;

View file

@ -31,7 +31,6 @@ in
termscp termscp
nixpkgs-review nixpkgs-review
# inputs.nix-gaming.packages.${pkgs.stdenv.hostPlatform.system}.star-citizen
]; ];
services.teamviewer.enable = true; services.teamviewer.enable = true;
@ -41,52 +40,34 @@ in
AddressFamily inet AddressFamily inet
''; '';
imports = imports = with config.flake.modules.nixos; [
with config.flake.modules.nixos; inputs.nixos-hardware.nixosModules.common-cpu-amd
[ inputs.nixos-hardware.nixosModules.common-pc
inputs.nixos-hardware.nixosModules.common-cpu-amd inputs.nixos-hardware.nixosModules.common-pc-ssd
inputs.nixos-hardware.nixosModules.common-pc inputs.catppuccin.nixosModules.catppuccin
inputs.nixos-hardware.nixosModules.common-pc-ssd
inputs.catppuccin.nixosModules.catppuccin
# System modules # System modules
base base
dev dev
desktop desktop
games games
# hardware # hardware
audio audio
bluetooth bluetooth
amdgpu amdgpu
# desktops # desktops
# hyprland # hyprland
niri niri
# apps # apps
_1password _1password
# Users # Users
cholli cholli
] root
++ [ ];
{
home-manager.users.cholli = {
imports = with config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
dev
# Activate all user based config
cholli
];
};
}
];
nix = { nix = {
distributedBuilds = true; distributedBuilds = true;

View file

@ -18,8 +18,30 @@ topLevel: {
modules = { modules = {
nixos.cholli = nixos.cholli =
{ config, pkgs, ... }:
{ {
config,
inputs,
pkgs,
...
}:
{
imports = [
{
home-manager.users.cholli = {
imports = with topLevel.config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
dev
# Activate all user based config
cholli
];
};
}
];
programs.fish.enable = true; programs.fish.enable = true;
sops.secrets.passwordHash.neededForUsers = true; sops.secrets.passwordHash.neededForUsers = true;

View file

@ -1,8 +1,28 @@
topLevel: { topLevel: {
flake = { flake = {
modules.nixos.root = modules.nixos.root =
{ config, pkgs, ... }:
{ {
config,
inputs,
pkgs,
...
}:
{
imports = [
{
home-manager.users.root = {
imports = with topLevel.config.flake.modules.homeManager; [
inputs.catppuccin.homeModules.catppuccin
# components
base
# Activate all user based config
cholli # TODO: make root based config that makes it clear I am root user right now
];
};
}
];
programs.fish.enable = true; programs.fish.enable = true;
sops.secrets.passwordHash.neededForUsers = true; sops.secrets.passwordHash.neededForUsers = true;