Contains macOS configuration files for various apps and instructions for setting up a new Mac.
- Preparation
- General
- macOS
- Alfred
- NodeJS
- Ruby
- Git
- VS Code
- Spacemacs
- MacVIM
- iOS Development
- Android Development
- PHP Development
- Ansible
- Browsers
- iTerm2
- Fluid
- Others
- References
-
Update everything that is available in the App Store
-
Install Xcode
-
Install Homebrew
-
Clone this repo to a local dir (e.g.
~/.files
).git clone git@github.com:shiki/dotfiles.git ~/.files
brew install dropbox google-chrome google-chrome@canary slack firefox notion zoom
brew install visual-studio-code
brew install sequel-ace
brew install alfred appcleaner marta keepassxc omnidisksweeper rectangle espanso
brew install adobe-acrobat-reader handbrake
brew install git lnav tree wget gh
brew install proxyman
# Install JuliaMono Typeface (https://juliamono.netlify.app/)
brew tap homebrew/cask-fonts
brew install --cask font-juliamono
These aren't installed through Homebrew
# Always show hidden files
defaults write -g AppleShowAllFiles -bool true
# Restart Finder
killall Finder
# Enable full keyboard access for all controls
# (e.g. enable Tab in modal dialogs)
defaults write NSGlobalDomain AppleKeyboardUIMode -int 3
-
Install ohmyzsh
-
Install dependencies
brew install zoxide fzf
-
Symlink
dotfiles/.zshrc
to~/.zshrc
ln -s ~/.files/.zshrc ~/.zshrc
Follow the instructions in Sync your Alfred settings between Macs to synchronize the settings using Dropbox.
These workflows should be automatically installed:
- Convert
- Encode/Decode
- DevDocs
- Faker
- Github
- IP Address
- Kill Process
- Pomodoro
- Spotify Mini Player
- Stack Overflow
- Terminal-Finder
- TimeZones
- UUID Generator
Symlink dotfiles/espanso
to the path defined by the espanso path config
command.
symlink_target=$(espanso path config) && rm -rf "$symlink_target" && ln -sf ~/.files/espanso "$symlink_target"
-
Install nvm.
-
Install the latest Node version.
nvm intall node
-
Install
rbenv
brew install rbenv
-
Install the latest Ruby version.
# List all available versions rbenv install -l # Install rbenv install <version>
-
Set it as the global version.
rbenv global <version>
-
Install global Ruby packages.
gem install bundler cocoapods
-
Prepare Cocoapods repo. This usually takes a long time.
pod setup
git config --global user.name "Shiki"
git config --global user.email "GITHUB_NOREPLY_EMAIL_ADDRESS"
VS Code settings are synchronized using the built-in Settings Sync. Turn the Settings Sync on and log in using GitHub.
Disable press and hold so that VS Code will repeat any key that is being held:
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
-
Install Emacs-plus.
-
Follow instructions in here to install Spacemacs.
-
Symlink
.spacemacs
mv .spacemacs .spacemacs.bak ln -s .files/spacemacs/.spacemacs .spacemacs
-
Symlink
.vim
$ ln -s ~/.files/vim/vim.symlink ~/.vim
-
Install Vundle. Follow all instructions until the
:PluginInstall
has been executed -
Symlink
.vimrc
$ rm ~/.vimrc $ ln -s ~/.files/vim/vimrc.symlink ~/.vimrc
-
In MacVIM, run
:PluginInstall
to install all plugins. This instructs the Vundle package to install all the other packages managed by it. -
The VIM config uses DejaVu Sans Mono for Powerline. For VIM to use this font in the terminal, make sure to set this font as the default font in the Terminal or iTerm2.
- Install the XVim2 plugin.
- Install the custom keybindings.
- Symlink
XVim.idekeybindings.symlink
ln -s ~/.files/xcode/KeyBindings/XVim.idekeybindings.symlink ~/Library/Developer/Xcode/UserData/KeyBindings/XVim.idekeybindings
- Enable the keybinding in XCode → Preferences → Key Bindings
- Symlink
- Symlink the
.xvimrc
ln -s ~/.files/xcode/.xvimrc ~/.xvimrc
Install AppCode via Homebrew:
$ brew cask install appcode
AppCode settings are synchronized using a git repo.
- Follow the instructions in Share settings through a settings repository.
- Use the
appcode-settings
Github repo.
brew install simsim swiftformat
Install Android Studio via Homebrew:
brew install android-studio
Android Studio settings are synchronized using a git repo.
- Follow the instructions in Share settings through a settings repository.
- Use the
android-studio-settings
Github repo.
brew install scrcpy
Settings are synchronized using IDE settings sync using my Jetbrains account.
Install pyenv.
brew install ansible
brew install --cask temurin
brew install intellij-idea
Install these extensions.
- LastPass
- Markdown Here
- Copy as Markdown
- Vimium
- Momentum
- DuckDuckGo Privacy Essentials
- Url Shortener
- uBlock Origin
- Git.io URL Shortener
Install these extensions.
Install themes from http://iterm2colorschemes.com/
- Flatland
- Dracula
- Hardcore
- Japanesque
- Space Grey Eighties Dull
- Change the default DNS
- Add a Quick Action to convert HEIC to JPEG
- Enable zoom by checking Settings → Accessibility → Zoom → Use scroll gesture with modifier keys to zoom