I use Arch BTW
Personal configuration files managed with GNU Stow for a clean, modular dotfiles setup.
# Clone dotfiles git clone https://github.com/yourusername/dotfiles.git ~/dotfiles cd ~/dotfiles # Run automated setup (installs packages + configures everything) ./scripts/initial_setup
# Clone dotfiles git clone https://github.com/yourusername/dotfiles.git ~/dotfiles cd ~/dotfiles # Install individual configs with stow stow nvim # Neovim configuration stow tmux # Tmux configuration stow zsh # Zsh shell configuration stow starship # Starship prompt stow alacritty # Terminal emulator (if desired) # ... install only what you need
- nvim/ - Modern Neovim configuration with mini.nvim ecosystem
- tmux/ - Terminal multiplexer with seamless Neovim integration
- zsh/ - Enhanced shell with fuzzy history and smart completions
- alacritty/ - GPU-accelerated terminal emulator
- kitty/ - Feature-rich terminal with advanced capabilities
- ghostty/ - Modern terminal emulator configuration
- hyprland/ - Dynamic tiling Wayland compositor
- laptop-hyperland/ - Laptop-specific Hyprland config
- i3/ - Classic i3 window manager configuration
- waybar/ - Wayland status bar
- laptop-waybar/ - Laptop-specific Waybar config
- picom/ - X11 compositor for transparency and effects
- starship/ - Cross-shell prompt configuration
- lazydocker/ - Terminal UI for Docker management
- walker/ - Application launcher configuration
- scripts/ - Setup and maintenance scripts (includes Arch Linux auto-installer)
# Arch Linux sudo pacman -S stow neovim tmux zsh fzf ripgrep fd git starship # Ubuntu/Debian sudo apt install stow neovim tmux zsh fzf ripgrep fd-find git curl -sS https://starship.rs/install.sh | sh
-
Clone Repository
git clone https://github.com/yourusername/dotfiles.git ~/dotfiles cd ~/dotfiles
-
Backup Existing Configs (if any)
mkdir ~/config-backup mv ~/.config/nvim ~/config-backup/ 2>/dev/null || true mv ~/.zshrc ~/config-backup/ 2>/dev/null || true mv ~/.config/tmux ~/config-backup/ 2>/dev/null || true
-
Install Configurations
# Individual components stow nvim stow tmux stow zsh # Or all at once stow */
-
Set Zsh as Default Shell
chsh -s $(which zsh) -
Install Neovim Plugins
nvim --headless "+Lazy! install" +qa -
Install Tmux Plugins (if using TPM)
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm # In tmux: prefix + I to install plugins
Each configuration is organized in its own directory and can be installed independently with stow. Browse the individual directories for specific configuration details.
Consistent TokyoNight theming across all tools:
- Neovim: TokyoNight colorscheme
- Tmux: Custom TokyoNight status bar
- Shell: Starship prompt with matching colors
Ctrl+Y- Accept selection (works in Neovim pickers AND terminal suggestions)Ctrl+h/j/k/l- Navigate seamlessly between tmux panes and vim splitsCtrl+R- Fuzzy search history in terminal<leader>tc- Toggle sensitive data censoring in Neovim
- Formatters only activate when project config files exist
- LSP servers attach based on project configuration
- Sensitive data automatically censored in code files
- History search works across tmux sessions
- Automatic password/API key censoring
- .env file value protection
- Easy toggle for temporary reveal
See CHANGELOG.md for recent improvements including:
- Plugin consolidation (dressing.nvim β mini.pick)
- Enhanced tmux navigation fixes
- Fuzzy history search improvements
- Smart formatting conditions
cd ~/dotfiles mkdir -p newapp/.config/newapp # Add your configs to newapp/.config/newapp/ stow newapp
cd ~/dotfiles git pull # Re-stow your installed configurations stow --restow nvim tmux zsh starship # Example for core configs
cd ~/dotfiles stow -D nvim # Remove nvim stow links
Feel free to fork and adapt these configurations! If you find improvements or fixes, pull requests are welcome.
This project is licensed under the MIT License - feel free to use and modify as needed.
Note: These configurations are tailored for Arch Linux but should work on most Unix-like systems with minor adjustments.
Pi Integration: Includes a Pi β Neovim bridge for non-intrusive AI-assisted editing. See pi/.pi/agent/extensions/pi-nvim-bridge/ for setup and usage.