Personal dotfiles and configuration scripts for macOS, WSL, and development tools. Automate your environment setup and keep your configs in sync across machines.
- Overview
- Prerequisites
- Setup Instructions
- VSCode Setup
- Troubleshooting
- Additional Settings
- Recommended Chrome Extensions
This repository contains scripts and configuration files to quickly set up a development environment on macOS or Windows (WSL). It includes shell scripts, system preferences, VSCode settings, and more.
Note: The following tools are automatically installed by the setup scripts:
- Homebrew (for macOS)
- tmux
- VSCode
- Other development tools and dependencies
- Run the main setup script:
bash ./install/mac.sh
- Install tmux plugins:
- In a tmux session, press prefix (
Ctrl+t) thenI(capital i)
- In a tmux session, press prefix (
- Enable WSL in "Turn Windows features on or off"
- Install Ubuntu and Windows Terminal from Microsoft Store
- [Optional] Set up DNS configs if you have connectivity issues:
- Clone and set up dotfiles:
git clone https://github.com/keiohtani/dotfiles.git && cd dotfiles && source install/wsl.sh
- Configure Windows Terminal:
- Open settings and add to your Ubuntu profile:
"colorScheme": "Solarized Dark", "fontSize": 9
- Open settings and add to your Ubuntu profile:
- Install tmux plugins:
- In a tmux session, press prefix (
Ctrl+t) thenI
- In a tmux session, press prefix (
- Set up configs (applies to both macOS and WSL):
source install/configs.sh
See vscode/README.md for recommended extensions and settings.
Some of the macOS setup scripts copy files from protected locations under ~/Library (Contacts, Mail, Messages, and other system preferences). If you see errors like:
cp: /Users/kohtani/Library/Preferences/com.apple.AddressBook.plist: Operation not permitted
that means the process doing the copy is blocked by macOS privacy (TCC). To fix this:
- Open System Settings → Privacy & Security → Full Disk Access (System Preferences → Security & Privacy → Privacy → Full Disk Access on older macOS).
- Add the terminal app you use (Terminal.app, iTerm, or Visual Studio Code) to the list and unlock to allow changes.
- Git Credential Manager (for WSL):
git config --global credential.helper "/mnt/c/Users/kohtani/AppData/Local/Programs/Git/mingw64/bin/git-credential-manager.exe" - Azure DevOps Only:
git config --global credential.https://dev.azure.com.useHttpPath true
- Grammarly
- 1Password
- Vimium