It's for my own use, on 💻 MacOS, mostly for simple setup of my 🧑🏼💻 dev environment.
Install homebrew and see all packages in ./Brewfile
git clone https://github.com/vuon9/dotfiles.git
To have the terminal, shell, and command-line tools configured, run the following command:
brew bundle --file=~/path/to/dotfiles/Brewfile
Read more and also this to understand Brewfile usages and tips.
After having all softwares installed, can use the dotfiles by symlinking them to the home directory.
# Backup current config
mv ~/.config/fish ~/.config/fish.bak
mv ~/.gitconfig ~/.gitconfig.bak
mv ~/.config/.wezterm.lua ~/.config/.wezterm.lua.bak
mv ~/.config/kitty ~/.config/kitty.bak
# Apply config from this folder as symlink
ln -s /path/to/dotfiles/fish ~/.config/fish
ln -s /path/to/dotfiles/.gitconfig ~/.gitconfig
ln -s /path/to/dotfiles/.wezterm.lua ~/.config/.wezterm.lua
ln -s /path/to/dotfiles/kitty ~/.config/kitty
# Addtional in case using Go
mv ~/.golangci.yml ~/.golangci.yml.bak
ln -s /path/to/dotfiles/.golangci.yml ~/.golangci.yml
I use CommitMono but I customized it a bit to make it more readable with my personal preference. Can find the font in ./fonts
folder.
- To install the font, just double click on the font file and click
Install Font
button. - To use it in editor, terminal, etc. need to set it 'CommitMono-Vng' as the font name.
- kitty: A cross-platform, fast, feature full, GPU based terminal emulator
- fish: The friendly interactive shell. The plugins may need to be installed manually:
jorgebucaran/fisher
: A plugin manager for Fishilancosman/tide@v6
: A modern prompt manager for the Fish shelledc/bass
: Make Bash utilities usable in Fish shelljgantunes/fish-gvm
: Fish plugin for GVMfranciscolourenco/done
: Automatically receive notifications when long-running commands finishkenji-miyake/reload.fish
: Reload fish shell configuration
- delta: A syntax-highlighting pager for git diff
- fd: To search files and directories by name
- ripgrep: To search files and directories by content
- fzf: A command-line fuzzy finder
- wezterm Experimental: A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
- nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions
- gvm: Go Version Manager
- brew-php-switcher: Use alias
phpvm
to switch between PHP versions installed via Homebrew