Migrate all remaining home-manager modules from home/modules/ to home/roles/ to establish a unified role-based configuration pattern. This completes the migration started in Phase 1. Changes: - Phase 1-3: Migrated tmux, plasma-manager, kubectl, and emacs to roles - Phase 4: Migrated aerospace with custom options under home.roles.aerospace.* - Phase 5: Migrated i3+sway with shared config and override options - Phase 6: Removed empty home/modules/ directory All home configs now import only ./roles with role-based enable options. Updated flake.nix machine-specific overrides to use new namespaces. Verified with nix flake check - all configurations build successfully.
34 lines
761 B
Nix
34 lines
761 B
Nix
{ pkgs, globalInputs, system, ... }:
|
|
|
|
{
|
|
# Home Manager configuration for full desktop experience
|
|
home.username = "johno";
|
|
home.homeDirectory = "/home/johno";
|
|
home.stateVersion = "24.05";
|
|
|
|
# Enable all desktop roles for full-featured experience
|
|
home.roles = {
|
|
base.enable = true;
|
|
desktop.enable = true;
|
|
office.enable = true;
|
|
media.enable = true;
|
|
development.enable = true;
|
|
communication.enable = true;
|
|
sync.enable = true;
|
|
kdeconnect.enable = true;
|
|
kubectl.enable = true;
|
|
tmux.enable = true;
|
|
plasma-manager.enable = true;
|
|
emacs.enable = true;
|
|
i3_sway.enable = true;
|
|
};
|
|
|
|
targets.genericLinux.enable = true;
|
|
home.sessionVariables = {};
|
|
home.sessionPath = [];
|
|
|
|
imports = [
|
|
./roles
|
|
];
|
|
}
|