macOS・Ubuntu・WSL 向け開発環境セットアップスクリプト集です。 インタラクティブメニューで必要な機能ブロックだけを選択してインストールできます。
1コマンドでクローンしてインタラクティブインストーラーを起動:
curl -fsSL https://raw.githubusercontent.com/long-910/dotfiles/main/install.sh | bashすべてを非インタラクティブにインストールする場合:
curl -fsSL https://raw.githubusercontent.com/long-910/dotfiles/main/install.sh | bash -s -- --allリポジトリは ~/.dotfiles にクローンされます。DOTFILES_DIR で変更可能:
DOTFILES_DIR=~/my-dotfiles curl -fsSL https://raw.githubusercontent.com/long-910/dotfiles/main/install.sh | bashインタラクティブメニューで機能ブロックを選択してインストール。
git clone https://github.com/long-910/dotfiles.git
cd dotfiles
bash bootstrap.sh一括インストール。bootstrap.sh が使用できない環境向け。
git clone https://github.com/long-910/dotfiles.git
cd dotfiles
chmod +x install_and_configure.sh
./install_and_configure.sh| ブロック | 含まれるツール | デフォルト |
|---|---|---|
| Core | zsh, tmux, lsd, emacs, htop, neofetch, yazi | ON |
| Shell | starship, fzf, zoxide, atuin | ON |
| Dev | gh, ripgrep, direnv, bat, delta, fd, jq, lazygit | ON |
| Node.js | fnm + Node LTS + commitizen | OFF |
| Docker | Docker CE + Docker Compose | OFF |
bootstrap.sh 起動時に番号を入力して ON/OFF を切り替えられます。
非インタラクティブ実行も可能です:
bash bootstrap.sh --all # 全ブロック
bash bootstrap.sh --module shell # 特定モジュールのみ
bash bootstrap.sh --non-interactive # デフォルト設定で自動実行
bash bootstrap.sh --list # モジュール一覧表示| ツール | 説明 |
|---|---|
| starship | 高速・カスタマイズ可能なクロスシェルプロンプト |
| fzf | ファジーファインダー。Ctrl-R でヒストリ検索、Ctrl-T でファイル検索 |
| zoxide | cd の賢い代替。z proj で頻繁に使うディレクトリへジャンプ |
| atuin | SQLite ベースのシェルヒストリ。Ctrl-R でファジー検索 |
| ツール | 説明 |
|---|---|
| gh | GitHub CLI。PR・Issue をターミナルから操作 |
| ripgrep | 高速 grep 代替。.gitignore を自動的に尊重 |
| direnv | ディレクトリごとの環境変数自動ロード |
| bat | シンタックスハイライト付き cat 代替 |
| delta | シンタックスハイライト付き git diff ページャ |
| fd | 高速 find 代替 |
| jq | コマンドライン JSON プロセッサ |
| lazygit | git のターミナル UI |
| ツール | 説明 |
|---|---|
| tmux | ターミナルマルチプレクサ。ログイン時に自動起動し、tmux 終了でシェルも終了 |
新しいターミナルを開くと tmux が自動的に起動し、既存のセッションがあればアタッチし、なければ新しいセッションを作成します。tmux を終了するとシェルも終了します。無効にするには ~/.zshrc.d/tmux.zsh を削除してください。
| ツール | 説明 |
|---|---|
| lsd | アイコン付き ls 代替 |
| yazi | ターミナルファイルマネージャ。yy コマンドで起動し、終了後そのディレクトリに移動 |
WSL2 でアイコンが表示されない場合 lsd のアイコン表示には Nerd Fonts が必要です。WSL2 ではターミナルが Windows 側で動作するため、フォントは Windows 側にインストール する必要があります。
- nerdfonts.com から Nerd Font をダウンロード(例:CaskaydiaCove Nerd Font、JetBrainsMono Nerd Font)
.ttfファイルを右クリック → 「すべてのユーザーのためにインストール」- Windows Terminal:設定 → Ubuntu プロファイル → 外観 → フォントフェイス → インストールしたフォントを選択(例:
CaskaydiaCove Nerd Font Mono)- ターミナルを再起動
config/starship.toml を編集してカスタマイズできます。
インストール後は ~/.config/starship.toml に配置されます。
プロジェクトルートに .envrc を作成:
export DATABASE_URL="postgresql://localhost/myapp"
export NODE_ENV="development"direnv allow # 初回のみ許可newproject 関数でプロジェクトを素早く作成できます:
newproject node my-app # Node.js プロジェクト
newproject python my-script # Python プロジェクトAPI キーや環境固有の設定は ~/.zshrc.local に記載します(git に含まれません)。
cp dotfiles/.zshrc.local.example ~/.zshrc.local
# エディタで ~/.zshrc.local を編集詳細は Doc/ja/secrets.md を参照してください。
bash uninstall.sh~/.zshrc.d/内の配置ファイルを削除.zshrc、.tmux.conf、.emacs.elのバックアップを復元~/.config/starship.toml、~/.config/atuin/config.tomlを削除- git の
commit.template設定を削除 - 任意でインストールしたパッケージを削除
| 環境 | 状態 |
|---|---|
| macOS (Apple Silicon / Intel) | ✅ |
| Ubuntu 22.04 / 24.04 | ✅ |
| WSL2 (Ubuntu) | ✅ |
MIT — 詳細は LICENSE を参照してください。