Adds a module to launch specific nixpkgs dynamically, such that they won't be always included in the nix store
44 lines
964 B
Nix
44 lines
964 B
Nix
{ config, lib, pkgs, globalInputs, system, ... }:
|
|
|
|
{
|
|
# Home Manager configuration for compact laptop setups
|
|
# Optimized for space-constrained environments
|
|
|
|
home.username = "johno";
|
|
home.homeDirectory = "/home/johno";
|
|
home.stateVersion = "24.05";
|
|
|
|
# Enable essential roles only (exclude heavy office/media packages)
|
|
home.roles = {
|
|
base.enable = true;
|
|
desktop.enable = true;
|
|
development.enable = true;
|
|
communication.enable = true;
|
|
kdeconnect.enable = true;
|
|
media.enable = true;
|
|
sync.enable = true;
|
|
kubectl.enable = true;
|
|
|
|
# Launcher wrappers for excluded/optional packages
|
|
launchers = {
|
|
enable = true;
|
|
packages = [
|
|
"libreoffice"
|
|
];
|
|
};
|
|
};
|
|
|
|
targets.genericLinux.enable = true;
|
|
home.sessionVariables = {};
|
|
home.sessionPath = [];
|
|
|
|
imports = [
|
|
./roles
|
|
./modules/emacs
|
|
./modules/i3+sway
|
|
./modules/kubectl
|
|
./modules/plasma-manager
|
|
./modules/tmux
|
|
];
|
|
}
|