A collection of personal configuration files for various tools and applications to quickly set up a consistent development environment across different machines.
Dotfiles are configuration files in Unix-like systems that begin with a dot (.) and control the behavior of various applications and shells. This repository organizes these configuration files to make them easy to install and manage across different machines.
This repository includes configurations for:
- bash - Bash shell configuration
- bat - Cat clone with syntax highlighting
- bin - Custom scripts and binaries
- btop - System monitor configuration
- env - Env variables that are secrets
- fastfetch - System information display
- gh - GitHub CLI configuration
- ghostty - Terminal emulator configuration
- git - Git version control configuration
- kitty - Terminal emulator configuration
- lazygit - Lazygit configuration
- misc - Miscellaneous configuration files
- nvim - Neovim text editor configuration
- tmux - Terminal multiplexer configuration
- Yazi - Yazi configuration
- Zellij - Zellij configuration
- zsh - Zsh shell configuration
- GNU Stow - Symlink manager
- [GPG] (https://gpgtools.org/) - GPG for encryption / decryption
brew install stow- Clone this repository to your home directory:
git clone https://github.com/skalidindi/dotfiles.git ~/dotfiles
cd ~/dotfiles- Run the bootstrap script to set up the environment:
./bootstrap.shThis will install necessary dependencies and create symlinks for all configuration files in your home directory.
If you only want to install specific configurations, you can use stow directly:
stow -t ~/ -R bash # Only install bash configuration
stow -t ~/ -R nvim # Only install nvim configurationThe bash and zsh configurations are organized into separate files:
.aliases- Command aliases.exports- Environment variables.functions- Shell functions.path- PATH modifications
The git configuration includes separate files for different contexts:
gitconfig- Main git configurationoss.gitconfig- Configuration for open source projectswork.gitconfig- Configuration for work projects
To update your dotfiles after making changes, you can re-run the bootstrap script:
./bootstrap.shThis project is open source and available under the MIT License.