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

5
home/fonts.nix Normal file
View File

@@ -0,0 +1,5 @@
{ ... }:
{
fonts.fontconfig.enable = true;
}

11
home/git.nix Normal file
View File

@@ -0,0 +1,11 @@
{ ... }:
{
programs.git = {
enable = true;
settings.user = {
name = "MDietermann";
email = "marvin.dietermann@hive-brain.de";
};
};
}

21
home/packages.nix Normal file
View File

@@ -0,0 +1,21 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
alacritty
claude-code
gcc
lua-language-server
neovim
nerd-fonts.jetbrains-mono
nil
nixpkgs-fmt
nodejs
obsidian
ripgrep
rustup
steam
unzip
xwallpaper
];
}

19
home/rofi.nix Normal file
View File

@@ -0,0 +1,19 @@
{ pkgs, ... }:
{
programs.rofi = {
enable = true;
theme = "arthur";
font = "sans-serif";
package = pkgs.rofi;
modes = [
"drun"
"run"
"window"
"ssh"
];
extraConfig = {
show-icons = true;
};
};
}

10
home/symlinks.nix Normal file
View File

@@ -0,0 +1,10 @@
{ config, lib, ... }:
{
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));
}

5
home/yazi.nix Normal file
View File

@@ -0,0 +1,5 @@
{ ... }:
{
programs.yazi.enable = true;
}

25
home/zsh.nix Normal file
View File

@@ -0,0 +1,25 @@
{ ... }:
{
programs.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";
};
};
}