My personal dotfiles configuration, managed with GNU Stow.
Before setting up, ensure the following tools are installed on your system:
- Git: For cloning the repository.
- GNU Stow: For symlinking the configuration files.
- Zsh: The default shell used in this configuration.
- Antidote: A Zsh plugin manager.
- Starship: The cross-shell prompt.
- Tmux: Terminal multiplexer.
- Neovim (optional but recommended): The text editor configured in these dotfiles.
- Zoxide, FZF, Fd, Bat: Additional tools used in the Zsh configuration.
Debian/Ubuntu:
sudo apt update
sudo apt install git stow zsh tmux neovim fzf fd-find bat
# Install Starship
curl -sS https://starship.rs/install.sh | sh
# Install Zoxide
curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bashFedora:
sudo dnf install git stow zsh tmux neovim fzf fd-find bat
# Install Starship & Zoxide (same as above)-
Clone the Repository Clone this repository to your home directory:
git clone https://github.com/yourusername/dotfiles.git ~/dotfiles cd ~/dotfiles
-
Install Antidote Install the Antidote plugin manager:
git clone --depth=1 https://github.com/mattmc3/antidote.git ${ZDOTDIR:-~}/.antidote -
Run Setup Script The setup script will use
stowto symlink the configuration files to your home directory:./scripts/setup.sh
Note: The script stows
zsh,starship,tmux, andgit. -
Set Zsh as Default Shell
chsh -s $(which zsh) -
Restart Shell Log out and log back in, or restart your terminal to apply the changes.
- scripts/: Setup scripts.
- zsh/: Zsh configuration (
.zshrc, plugins). - starship/: Starship prompt configuration.
- tmux/: Tmux configuration (
.tmux.conf). - git/: Git configuration.
- Git Config: The
gitdirectory might be empty or contain minimal config. Ensure you set your git user and email manually if not provided:git config --global user.name "Your Name" git config --global user.email "you@example.com"