Skip to content

Latest commit

 

History

168 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

初回インストール

自動インストール(推奨)

提供されているインストールスクリプトを使用して、一括でセットアップを行えます:

# dotfilesディレクトリに移動
cd ~/dotfiles

# インストールスクリプトを実行
bash .bin/install.sh

新しい Mac での初期構成

まだ dotfiles を clone していない新しい Mac では、次のコマンドで初期構成を開始できます。

curl -fsSL https://raw.githubusercontent.com/ishiooon/dotfiles/main/.bin/bootstrap-macos.sh \
  -o /tmp/bootstrap-macos.sh
bash /tmp/bootstrap-macos.sh

このスクリプトは、Homebrew、シェル設定、Neovim、Starship、WezTerm、UDEV Gothic NF、JankyBorders、Codex の管理対象設定をまとめて導入します。Neovim のプラグインと PHP デバッグ拡張も初回に準備し、dotfiles を ~/dotfiles に clone して設定をリンクします。既に ~/dotfiles が Git リポジトリの場合はその内容を使用し、Git リポジトリではない既存ディレクトリは上書きせずに中断します。

導入前の手順確認には、次のドライランを使用できます。

bash /tmp/bootstrap-macos.sh --dry-run

すでに dotfiles を clone 済みで、設定リンクだけを再作成したい場合は次のコマンドを実行します。

bash ~/dotfiles/.bin/install.sh --env=localdev

この単独インストーラーにも --dry-run と失敗時の復元機能があります。

bash ~/dotfiles/.bin/install.sh --env=localdev --dry-run

この「設定をリンクする」とは、設定を二重にコピーするのではなく、ホームディレクトリから dotfiles 内の管理対象を参照することです。対象は次のとおりです。

  • ~/.zshrc~/.bashrc.zsh.bash
  • ~/.config(Neovim、Starship、WezTerm、JankyBorders、lazygit)
  • ~/.bin~/.claude~/.agents
  • ~/.codex/AGENTS.md~/.codex/agents(認証情報や履歴は対象外)

そのため、dotfiles 側の設定を更新すると各アプリケーションへ反映されます。既存の設定は ~/dotbackup/ へ退避します。

手動インストール

インストールスクリプトを使用せず、手動でセットアップする場合:

1. シェル設定ファイルのシンボリックリンク作成

既存ファイルのバックアップ(必要に応じて):

mkdir -p ~/dotbackup
# .zshrcがある場合
mv ~/.zshrc ~/dotbackup/.zshrc
# .bashrcがある場合  
mv ~/.bashrc ~/dotbackup/.bashrc

シンボリックリンクの作成:

# zsh設定
ln -s ~/dotfiles/.zshrc ~/.zshrc

# bash設定
ln -s ~/dotfiles/.bashrc ~/.bashrc

2. starship設定のシンボリックリンク作成

# 既存設定をバックアップ(必要に応じて)
mv ~/.config/starship.toml ~/dotbackup/starship.toml

# シンボリックリンク作成
ln -s ~/dotfiles/.config/starship.toml ~/.config/starship.toml

3. mcphub設定のシンボリックリンク作成

# 既存設定をバックアップ(必要に応じて)
mv ~/.config/mcphub ~/dotbackup/mcphub

# シンボリックリンク作成
ln -s ~/dotfiles/.config/mcphub ~/.config/mcphub

4. JankyBorders のインストール

フォーカス中のウィンドウを枠線で見分けるため、JankyBorders の設定を dotfiles で管理します。設定の実体は .config/borders/bordersrc です。 導入前確認は bash .bin/install-janky-borders.sh --dry-run、導入は bash .bin/install-janky-borders.sh、設定変更後の再読み込みは brew services restart borders です。

セットアップ

APIキーの設定

このdotfilesには、APIキーなどの機密情報を安全に管理するシステムが含まれています。

初回セットアップ

bash使用者の場合:

  1. ローカル環境変数ファイルを作成:

    cp ~/.bash/env.local.bash.example ~/.bash/env.local.bash
  2. 作成したファイルを編集して実際のAPIキーを設定:

    nano ~/.bash/env.local.bash
  3. 新しいターミナルセッションを開くか、設定を再読み込み:

    source ~/.bashrc

zsh使用者の場合:

  1. ローカル環境変数ファイルを作成:

    cp ~/.zsh/env.local.zsh.example ~/.zsh/env.local.zsh
  2. 作成したファイルを編集して実際のAPIキーを設定:

    nano ~/.zsh/env.local.zsh
  3. 新しいターミナルセッションを開くか、設定を再読み込み:

    source ~/.zshrc

対応APIサービス

セキュリティ

  • .bash/env.local.bash.zsh/env.local.zsh は自動的に.gitignoreで除外されます
  • 実際のAPIキーがgitリポジトリにコミットされることはありません
  • .bash/env.local.bash.example.zsh/env.local.zsh.example がテンプレートとして提供されます

ファイル構造

.bash/
├── env.bash                 # 環境変数テンプレート(gitで管理)
├── env.local.bash.example   # ローカル設定例(gitで管理)
├── env.local.bash          # 実際のローカル設定(gitで除外)
├── history.bash            # 履歴設定
├── aliases.bash            # エイリアス定義
├── functions.bash          # 関数定義
├── terminal.bash           # ターミナル設定
├── completion.bash         # 補完設定
└── starship.bash           # starship設定

.zsh/
├── env.zsh                  # 環境変数テンプレート(gitで管理)
├── env.local.zsh.example    # ローカル設定例(gitで管理)
├── env.local.zsh           # 実際のローカル設定(gitで除外)
├── history.zsh             # 履歴設定
├── keybindings.zsh         # キーバインディング設定
└── functions.zsh           # 関数定義

.config/
├── borders/                # JankyBordersの設定
├── nvim/                   # Neovimの設定
├── wezterm/                # WezTermの設定
└── starship.toml           # starshipの設定

テスト情報

ここはmainで書き換えました

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages