Personal configuration files for a productive development environment.
This repository contains configuration files for various tools and applications, organized by application. The setup uses GNU Stow for symbolic link management, making it easy to install and uninstall configurations.
- Ghostty - Modern terminal emulator
- Hyprland - Dynamic tiling Wayland compositor
- Neovim - Lua-configured text editor with LazyVim
- Tmux - Terminal multiplexer
- Zsh - Shell with Oh My Zsh and custom configurations
- GNU Stow must be installed on your system
- For specific applications, ensure they are installed before running the setup
# Clone the repository
git clone <repository-url> ~/dotfiles
cd ~/dotfiles
# Run the installation script
./install.sh# Install individual applications
stow -R ghostty -t $HOME
stow -R hypr -t $HOME
stow -R nvim -t $HOME
stow -R tmux -t $HOME
stow -R zsh -t $HOME- Location:
ghostty/.config/ghostty/ - Modern terminal with integrated features
- Includes tmux integration scripts
- Location:
hypr/.config/hypr/ - Modular configuration split into:
input.conf- Input device settingslooknfeel.conf- Visual appearancemonitors.conf- Display configurationautostart.conf- Startup applicationsbindings.conf- Keybindings
- Location:
nvim/.config/nvim/ - Based on LazyVim framework
- Extensive plugin configuration including:
- LSP support with Mason
- Git integration
- Tree-sitter syntax highlighting
- Debugging with DAP
- Various language-specific tools
- Location:
tmux/.config/tmux/andtmux/.tmux.conf - Includes session management scripts
- Custom keybindings and status bar
- Location:
zsh/.zshrcandzsh/.config/zsh/ - Oh My Zsh integration
- Environment management (NVM, SDKMAN, etc.)
- Custom aliases and functions
- Development tool configurations
# Run the uninstall script
./uninstall.sh
# Or manually unstow applications
stow -D ghostty hypr nvim tmux zshdotfiles/
├── install.sh # Main installation script
├── uninstall.sh # Cleanup script
├── application.list # List of applications to install
├── ghostty/ # Ghostty configuration
├── hypr/ # Hyprland configuration
├── nvim/ # Neovim configuration
├── tmux/ # Tmux configuration
└── zsh/ # Zsh configuration
Each application directory contains its own configuration files. Modify them as needed, then run stow -R <app> -t $HOME to update the symlinks.
- GNU Stow
- Respective applications (Ghostty, Hyprland, Neovim, Tmux, Zsh)
- For Zsh: Oh My Zsh (optional but recommended)