Split configuration.nix and home.nix into per-domain modules

Break the two monolithic files into focused modules under system/
and home/ so each concern (boot, networking, xserver, picom, zsh,
git, rofi, etc.) lives in its own file. Clean up duplicates: drop
rofi from home.packages since programs.rofi.enable already installs
it, and move user-only apps (alacritty, obsidian, claude-code) from
environment.systemPackages to home.packages. Remove commented-out
boilerplate carried over from the install template.
This commit is contained in:
2026-06-28 21:02:48 +02:00
parent 7acb45c3a9
commit df0df6048a
21 changed files with 231 additions and 188 deletions

View File

@@ -1,76 +1,17 @@
{ config, pkgs, lib, ... }:
{ ... }:
{
home.username = "marvin";
home.homeDirectory = "/home/marvin";
home.stateVersion = "26.05";
programs = {
yazi.enable = true;
imports = [
./home/zsh.nix
./home/git.nix
./home/rofi.nix
./home/yazi.nix
./home/packages.nix
./home/symlinks.nix
./home/fonts.nix
];
git = {
enable = true;
settings.user = {
name = "MDietermann";
email = "marvin.dietermann@hive-brain.de";
};
};
rofi = {
enable = true;
theme = "arthur";
font = "sans-serif";
package = pkgs.rofi;
modes = [
"drun"
"run"
"window"
"ssh"
];
extraConfig = {
show-icons = true;
};
};
zsh = {
enable = true;
enableCompletion = true;
autosuggestion.enable = true;
syntaxHighlighting.enable = true;
history.size = 10000;
history.ignoreAllDups = true;
history.path = "$HOME/.zsh_history";
oh-my-zsh = {
enable = true;
plugins = [ "git" "sudo" ];
theme = "aussiegeek";
};
shellAliases = {
btw = "echo I use NixOS";
reload-nixos = "sudo nixos-rebuild switch --flake ~/nixos-dotfiles#hivebrain";
};
};
};
home.file = lib.mapAttrs'
(name: _: lib.nameValuePair ".config/${name}" {
source = config.lib.file.mkOutOfStoreSymlink
"${config.home.homeDirectory}/nixos-dotfiles/config/${name}";
})
(lib.filterAttrs (_: type: type == "directory") (builtins.readDir ./config));
home.packages = with pkgs; [
neovim
ripgrep
nil
nixpkgs-fmt
nodejs
gcc
rofi
xwallpaper
steam
unzip
];
home.username = "marvin";
home.homeDirectory = "/home/marvin";
home.stateVersion = "26.05";
}