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