This repository contains my personal configuration files (dotfiles) for various development tools and environments. It is designed to be portable and easy to set up on new machines.
dotfiles/
├── git/ # gitconfig, gitignore, etc.
├── shell/ # bashrc, zshrc, aliases
├── vim/ # vimrc, plugins
├── vscode/ # settings.json, extensions list
├── ssh/ # config, keys (optional)
├── docker/ # config.json
└── README.md
Each folder contains configuration files arranged so that the paths mirror their target locations in your home directory.
brew install stowgit clone https://github.com/ifkarsyah/dotfiles.git ~/dotfiles
cd ~/dotfilesIf you don't have Homebrew installed, run:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Then, install the packages listed in the Brewfile:
cd ~/dotfiles
brew bundle --file=Brewfile✅ This will install all packages, casks, and taps listed in the Brewfile automatically.
Whenever you install a new package, update the Brewfile:
brew bundle dump --file=~/dotfiles/Brewfile --forceCommit the updated Brewfile to your repo.
stow git
stow shell
stow vim
stow vscode
stow ssh
stow docker✅ This will create symlinks in your home directory pointing to the files in this repository.
For example:
~/.gitconfig -> ~/dotfiles/git/.gitconfig
~/.zshrc -> ~/dotfiles/shell/.zshrc
~/.vimrc -> ~/dotfiles/vim/.vimrc
~/Library/Application Support/Code/User/settings.json -> ~/dotfiles/vscode/Library/Application Support/Code/User/settings.json
~/.ssh/config -> ~/dotfiles/ssh/.ssh/config
~/.docker/config.json -> ~/dotfiles/docker/.docker/config.jsonIf you want to remove the symlinks created by Stow:
stow -D git
stow -D vimThis removes the symlinks without touching the repository files.