# NixOS Home Manager Configuration - AUTO-GENERATED DRAFT # Path: results/generated_home.nix # # This file was auto-generated on $(date) based on deep system reconnaissance. # It is designed to replicate your terminal and user environment. # # INSTRUCTIONS FOR USE: # 1. Add Home Manager to your main NixOS configuration. # 2. Clone your dotfiles repository (which should contain this file) to `~/.config/nixpkgs/`. # 3. Run `home-manager switch` to apply this configuration. { config, pkgs, ... }: { # Let Home Manager manage itself programs.home-manager.enable = true; # --- # 1. ZSH SHELL, STARSHIP PROMPT & OH MY ZSH # --- programs.zsh = { enable = true; enableAutosuggestions = true; enableSyntaxHighlighting = true; # Oh My Zsh is a popular framework. Many plugins are available as NixOS options. oh-my-zsh = { enable = true; plugins = [ "git" ]; # Add any other OMZ plugins you use theme = "agnoster"; # Or your preferred theme }; # Any custom aliases can be defined here. shellAliases = { ll = "eza -l -g --icons"; ls = "eza --icons"; cat = "bat"; # 'dua' is a cargo-installed tool for disk usage analysis dua = "dua"; }; }; # Set Zsh as your default shell home.shell = pkgs.zsh; # Starship prompt configuration programs.starship = { enable = true; # You can place your starship.toml configuration here, # or link it using home.file below. }; # Atuin shell history programs.atuin = { enable = true; enableZshIntegration = true; # Configure settings like sync server, etc. # settings = { # sync_address = "https://your-atuin-server:8888"; # }; }; # --- # 2. TERMINAL & MULTIPLEXER # --- programs.kitty = { enable = true; # settings = { font_size = 12; }; }; # Zellij terminal multiplexer programs.zellij = { enable = true; # enableZshIntegration = true; # If you want shell integration }; # --- # 3. PACKAGES: UTILITIES, TOOLS, AND LANGUAGES # --- home.packages = with pkgs; [ # --- Core Utilities --- unzip zip p7zip htop wget curl nmap minicom screen tree # --- Modern CLI Enhancements (from cargo & manual install logs) --- eza bat fzf zoxide lazygit yazi # Terminal file manager tealdeer # `tldr` client navi # Interactive cheatsheet tool carapace-bin # Shell completion generator # --- Language Toolchains --- rustup go nodejs python3 ]; # --- # 4. DOTFILE & CONFIG MANAGEMENT # --- # This section shows how to link config files from your Git repo. # This is where you would link your nvim, starship, etc., configs. # home.file.".config/nvim/init.vim".source = ./config/nvim/init.vim; # home.file.".config/starship.toml".source = ./config/starship.toml; }