2026-04-07 02:34:03 +02:00
|
|
|
{ config, lib, pkgs, pkgs-unstable, ... }:
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
imports = [
|
|
|
|
|
./modules/shell.nix
|
|
|
|
|
./modules/editor.nix
|
|
|
|
|
./modules/git.nix
|
2026-04-07 04:46:00 +02:00
|
|
|
./modules/tmux.nix
|
2026-04-07 02:34:03 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
|
|
# ============================================
|
|
|
|
|
# Home Manager Shared Configuration
|
|
|
|
|
# ============================================
|
|
|
|
|
|
2026-04-07 04:46:00 +02:00
|
|
|
home.username = "eliaskohout";
|
|
|
|
|
home.homeDirectory = "/home/eliaskohout";
|
2026-04-07 03:32:36 +02:00
|
|
|
home.stateVersion = "25.11";
|
2026-04-07 02:34:03 +02:00
|
|
|
|
|
|
|
|
# Home-level packages
|
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
|
# Utilities
|
|
|
|
|
tree
|
|
|
|
|
unzip
|
|
|
|
|
zip
|
|
|
|
|
bat
|
|
|
|
|
tldr
|
2026-04-07 04:46:00 +02:00
|
|
|
htop
|
|
|
|
|
iotop
|
|
|
|
|
# Container tools
|
|
|
|
|
podman
|
|
|
|
|
podman-compose
|
2026-04-07 02:34:03 +02:00
|
|
|
|
|
|
|
|
# Unstable packages (if needed)
|
|
|
|
|
# pkgs-unstable.some-package
|
|
|
|
|
];
|
|
|
|
|
|
2026-04-07 04:46:00 +02:00
|
|
|
|
2026-04-07 02:34:03 +02:00
|
|
|
# Environment variables
|
|
|
|
|
home.sessionVariables = {
|
2026-04-07 04:46:00 +02:00
|
|
|
EDITOR = "nvim";
|
|
|
|
|
SHELL = "/bin/zsh";
|
|
|
|
|
PAGER = "bat";
|
|
|
|
|
TERM = "tmux-256color";
|
|
|
|
|
LESSHISTFILE = "${config.xdg.cacheHome}/less/lesshst";
|
|
|
|
|
MANPATH = "$MANPATH:/usr/local/man";
|
2026-04-07 15:28:04 +02:00
|
|
|
NIX_BUILD_SHELL = "zsh";
|
2026-04-07 15:38:49 +02:00
|
|
|
NIXPKGS_ALLOW_UNFREE = "1";
|
2026-04-07 02:34:03 +02:00
|
|
|
};
|
2026-04-07 04:46:00 +02:00
|
|
|
home.sessionPath = [
|
|
|
|
|
"${config.home.homeDirectory}/.local/scripts"
|
|
|
|
|
"${config.home.homeDirectory}/.local/bin"
|
|
|
|
|
];
|
2026-04-07 02:34:03 +02:00
|
|
|
|
|
|
|
|
# Locale
|
|
|
|
|
home.language = {
|
2026-04-07 04:46:00 +02:00
|
|
|
base = "de_DE.UTF-8";
|
2026-04-07 02:34:03 +02:00
|
|
|
};
|
|
|
|
|
|
2026-04-07 04:46:00 +02:00
|
|
|
# Create xdg envs
|
|
|
|
|
xdg.enable = true;
|
|
|
|
|
|
|
|
|
|
# HM Modules
|
|
|
|
|
programs.fzf.enable = true;
|
|
|
|
|
programs.gpg.enable = true;
|
|
|
|
|
services.gpg-agent = {
|
|
|
|
|
enable = true;
|
|
|
|
|
enableSshSupport = true;
|
|
|
|
|
};
|
|
|
|
|
|
2026-04-07 15:28:04 +02:00
|
|
|
# Allow unfree packages
|
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
|
|
2026-04-07 04:46:00 +02:00
|
|
|
# Home Manager should manage itself
|
|
|
|
|
programs.home-manager.enable = true;
|
2026-04-07 06:26:59 +02:00
|
|
|
|
2026-04-07 14:54:25 +02:00
|
|
|
# Enable nix experimental features (mkDefault so NixOS module can override)
|
|
|
|
|
nix.package = lib.mkDefault pkgs.nix;
|
2026-04-07 06:26:59 +02:00
|
|
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
2026-04-07 02:34:03 +02:00
|
|
|
}
|