Skip to content

ry-itto/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

128 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

dotfiles

My personal dotfiles for macOS development environment, managed by chezmoi.

๐Ÿš€ Quick Start

# Install chezmoi if you don't have it
brew install chezmoi

# Initialize and apply this repository
chezmoi init --apply ry-itto/dotfiles

๐Ÿ“‹ Requirements

  • macOS (this configuration is macOS-only)
  • Command Line Tools for Xcode
  • Internet connection for downloading packages

๐Ÿ›  Installation

brew install chezmoi
chezmoi init --apply ry-itto/dotfiles

chezmoi init --apply will:

  1. Clone this repository into ~/.local/share/chezmoi
  2. Render dotfiles into $HOME (e.g. dot_zshrc โ†’ ~/.zshrc)
  3. Run run_onchange_install-brew-packages.sh to install Homebrew bundle from ~/.Brewfile
  4. Run run_onchange_configure-macos-defaults.sh and run_onchange_configure-xcode.sh to apply system defaults
  5. Run run_once_install-zplug.sh, run_once_install-dein.sh to bootstrap shell/editor plugin managers
  6. Run run_once_install-mise-tools.sh to install any tools defined in dot_config/mise/config.toml (ใ‚ฐใƒญใƒผใƒใƒซใงใฏ่จ€่ชžใƒฉใƒณใ‚ฟใ‚คใƒ ใ‚’ๅ›บๅฎšใ—ใชใ„ๆ–น้‡ โ€” ่ฉณ็ดฐใฏ ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใฎ็ฎก็†ๆ–น้‡)

๐Ÿ”„ Daily Operations

# Pull latest changes from this repo and re-apply
chezmoi update

# Edit a managed file (opens source file in $EDITOR)
chezmoi edit ~/.zshrc

# See what would change before applying
chezmoi diff

# Add a new file from $HOME into management
chezmoi add ~/.somefile

Note: After migrating to chezmoi, editing files in $HOME directly does not sync back to this repository. Use chezmoi edit or edit the source file under ~/.local/share/chezmoi, then chezmoi apply.

๐Ÿ“‚ Directory Structure

.
โ”œโ”€โ”€ dot_zshrc                              # โ†’ ~/.zshrc
โ”œโ”€โ”€ dot_zsh/                               # โ†’ ~/.zsh/
โ”‚   โ”œโ”€โ”€ alias.zsh
โ”‚   โ”œโ”€โ”€ env.zsh
โ”‚   โ”œโ”€โ”€ plugin.zsh
โ”‚   โ”œโ”€โ”€ style.zsh
โ”‚   โ”œโ”€โ”€ functions/
โ”‚   โ””โ”€โ”€ bin/executable_reload              # โ†’ ~/.zsh/bin/reload (chmod +x)
โ”œโ”€โ”€ dot_gitconfig
โ”œโ”€โ”€ dot_Brewfile
โ”œโ”€โ”€ dot_vim/
โ”œโ”€โ”€ dot_hammerspoon/
โ”œโ”€โ”€ dot_claude/                            # โ†’ ~/.claude/
โ”œโ”€โ”€ dot_config/
โ”‚   โ”œโ”€โ”€ ghostty/config
โ”‚   โ”œโ”€โ”€ nvim/
โ”‚   โ”œโ”€โ”€ starship.toml
โ”‚   โ””โ”€โ”€ mise/config.toml                   # mise settings
โ”œโ”€โ”€ private_Library/
โ”‚   โ””โ”€โ”€ private_Application Support/Code/User/settings.json   # โ†’ VSCode settings
โ”œโ”€โ”€ run_onchange_install-brew-packages.sh.tmpl
โ”œโ”€โ”€ run_onchange_configure-macos-defaults.sh
โ”œโ”€โ”€ run_onchange_configure-xcode.sh
โ”œโ”€โ”€ run_once_install-zplug.sh
โ”œโ”€โ”€ run_once_install-dein.sh
โ”œโ”€โ”€ run_once_install-mise-tools.sh
โ”œโ”€โ”€ .chezmoiignore                         # files to skip during apply
โ””โ”€โ”€ .github/workflows/ci.yml

๐ŸŽฏ What's Included

Development Tools

  • Package Managers: Homebrew, mise
  • Shell: Zsh with zplug, Starship prompt
  • Editors: Neovim, VSCode
  • Version Control: Git, GitHub CLI

Language Runtimes

mise ใงใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใ”ใจใซ็ฎก็†ใ™ใ‚‹ใ€‚่ฉณ็ดฐใฏ ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใฎ็ฎก็†ๆ–น้‡ ใ‚’ๅ‚็…งใ€‚

Other Stacks

  • iOS Development: Xcode, XcodeGen, xcbeautify
  • macOS Apps: Ghostty, Raycast, Hammerspoon, Rectangle

โš™๏ธ Configuration

Zsh

Modular configuration in dot_zsh/:

  • alias.zsh: Custom command aliases
  • env.zsh: Environment variables and PATH setup
  • plugin.zsh: Zsh plugin configuration via zplug
  • style.zsh: Prompt and appearance settings

Git

dot_gitconfig provides commit template, GitHub CLI helpers, and standard pull/credential settings.

Vim

Vim setup is wired up via dein.vim. Plugin manifests live under dot_vim/rc/.

๐Ÿ”ง Customization

  1. Fork this repository to create your own version
  2. Edit configurations under ~/.local/share/chezmoi/ (or via chezmoi edit)
  3. Apply changes with chezmoi apply
  4. Modify packages in dot_Brewfile

๐Ÿงญ ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใฎ็ฎก็†ๆ–น้‡

ใ“ใฎ dotfiles ใงใฏ ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ่จ€่ชžใƒฉใƒณใ‚ฟใ‚คใƒ ใฎๅ…ฑ้€š่จญๅฎš๏ผˆใ‚ฐใƒญใƒผใƒใƒซใƒใƒผใ‚ธใƒงใƒณ๏ผ‰ใ‚’ๆŒใŸใชใ„ ๆ–น้‡ใ‚’ๆŽกใ‚‹ใ€‚

ใƒซใƒผใƒซ

  • ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆๅดใงๆŒ‡ๅฎšใ•ใ‚Œใฆใ„ใ‚‹ๅ ดๅˆ: ใใฎใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใฎ mise.toml / .tool-versions / .node-version / .ruby-version ใชใฉใซๅพ“ใ„ใ€mise๏ผˆใพใŸใฏๅ„ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆๆŒ‡ๅฎšใฎๆ–นๆณ•๏ผ‰ใงๅฐŽๅ…ฅใ™ใ‚‹ใ€‚
  • ใใฎไป–ใ€ใƒญใƒผใ‚ซใƒซใงไธ€ๆ™‚็š„ใซๅฟ…่ฆใซใชใฃใŸๅ ดๅˆ: mise use -g <tool>@<version> ใชใฉใง้ƒฝๅบฆใ‚ฐใƒญใƒผใƒใƒซใซๅ…ฅใ‚Œใ‚‹ใ€‚dotfiles ๅดใซใฏใ‚ณใƒŸใƒƒใƒˆใ—ใชใ„ใ€‚
  • dotfiles ็ฎก็†ไธ‹ใฎ dot_config/mise/config.toml: ่จ€่ชžใƒฉใƒณใ‚ฟใ‚คใƒ ใฎใƒใƒผใ‚ธใƒงใƒณใฏ่จ˜่ฟฐใ—ใชใ„ใ€‚mise ่‡ชไฝ“ใฎ่จญๅฎš๏ผˆไพ‹: idiomatic_version_file_enable_tools๏ผ‰ใซ้™ใ‚‹ใ€‚

็†็”ฑ

ๅ…ฑ้€š่จญๅฎšใงใƒฉใƒณใ‚ฟใ‚คใƒ ใฎใƒใƒผใ‚ธใƒงใƒณใ‚’ๅ›บๅฎšใ™ใ‚‹ใจใ€

  • ใƒžใ‚ทใƒณใ”ใจใƒปใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใ”ใจใฎใƒใƒผใ‚ธใƒงใƒณๅทฎ็•ฐใซ่ฟฝๅพ“ใ™ใ‚‹ใŸใ‚ใซ dotfiles ๅดใ‚’้ ป็นใซๆ›ดๆ–ฐใ™ใ‚‹ใ“ใจใซใชใ‚‹
  • ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆๅดใฎๆŒ‡ๅฎšใจใ‚ฐใƒญใƒผใƒใƒซๆŒ‡ๅฎšใŒ่ก็ชใ—ใŸใจใใฎๅ„ชๅ…ˆ้ †ไฝใฎ่ชฟๆ•ดใŒ้ขๅ€’

ใซใชใ‚‹ใ€‚ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆๅดใฎๆŒ‡ๅฎšใ‚’ๅธธใซๅ„ชๅ…ˆใ™ใ‚‹ใ“ใจใงใ€dotfiles ใ‚’ใ€Œ็’ฐๅขƒใฎๅœŸๅฐใ€ใ ใ‘ใซไฟใคใ€‚

ไพ‹ๅค–: Homebrew ็ตŒ็”ฑใงๅ…ฅใ‚‹่จ€่ชž

Homebrew ใฎใƒ•ใ‚ฉใƒผใƒŸใƒฅใƒฉใฎไพๅญ˜้–ขไฟ‚ใจใ—ใฆ PythonใƒปRuby ใชใฉใŒๅ…ฅใฃใฆใ—ใพใ†ใ‚ฑใƒผใ‚นใฏ่จฑๅฎนใ™ใ‚‹ใ€‚brew bundle ใฎๅ‡บๅŠ›ใ‚„ /opt/homebrew/Cellar ้…ไธ‹ใซๅ…ฅใ‚‹ใ‚‚ใฎใฏใ€ใƒ„ใƒผใƒซใฎๅ‹•ไฝœใซๅฟ…่ฆใชๅ‰ฏ็”ฃ็‰ฉใจใฟใชใ™๏ผˆใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆ็”จ้€”ใงใฏ mise ๅดใ‚’ๅ„ชๅ…ˆใ™ใ‚‹๏ผ‰ใ€‚

๐Ÿค Contributing

Feel free to open issues or submit pull requests if you have suggestions for improvements.

๐Ÿ“„ License

This repository is available under the MIT License. Feel free to fork and modify for your own use.

About

my dotfiles for macOS

Resources

License

Stars

Watchers

Forks

Contributors