This repository contains my personal configuration files for Zsh, Neovim, Ghostty, and more, managed with GNU Stow.
Follow these steps to set up this configuration on your Mac:
Make sure you have Homebrew installed, then run:
brew install git stow
Clone the dotfiles repo into your home directory:
git clone https://github.com/fiqryq/dotfile.git ~/.dotfile
Change into the dotfile directory and use Stow to create symlinks:
cd ~/.dotfile
stow zsh
stow nvim
stow ghostty
Add or remove packages as needed.
- Zsh: If you use Oh My Zsh or other frameworks, install them as needed.
- Neovim: Open Neovim and run your plugin manager’s install command (e.g.,
:PackerSync
). - Ghostty: Download and install Ghostty if you haven’t already.
If you use a .env
or .zshrc_priv
for secrets or machine-specific settings, create it now:
touch ~/.env
# Add your secrets, e.g.:
# export API_KEY="your_api_key"
These files are ignored by git and should not be committed.
Apply your configuration:
source ~/.zshrc
Or simply open a new terminal window.
.dotfile/
zsh/.zshrc
nvim/.config/nvim/
ghostty/.config/ghostty/
...
- Each directory is a Stow package.
- Symlinks are created in your home directory or
~/.config
.
- Secrets (API keys, tokens, etc.) should go in
.env
or similar files, which are git-ignored. - Never commit sensitive information to this repository.
To update your dotfiles:
- Edit files in
~/.dotfile
- Commit and push changes:
git add . git commit -m "Update configs" git push
- If configs don’t load, check that symlinks exist:
ls -l ~/.zshrc ~/.config/nvim ~/.config/ghostty
- Remove conflicting files before running
stow
. - For more help, see Stow documentation.