セットアップ手順
前提条件
- Ubuntu / Debian 系 Linux または WSL
curlがインストールされていること- Doppler CLI がインストール済みで
doppler loginによるログインが完了していること(個人アカウントのブラウザ認証のみで完結します)- CA証明書・GPG鍵・SSH鍵は Doppler(project
keys, configprd)から自動取得されます。未ログインのまま進めると、これらの手順は警告を出して silently スキップされ、鍵なしの状態でセットアップが完了してしまいます。
- CA証明書・GPG鍵・SSH鍵は Doppler(project
1. リポジトリをクローン
git clone https://github.com/rito528/dotfiles.git ~/dotfiles
cd ~/dotfiles
2. セットアップスクリプトを実行
./setup.sh
3. シェルを再起動
Nix をインストールした場合は、シェルを再起動するか以下を実行してください:
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
個別のスクリプトを実行する場合
各インストールスクリプトは単体でも実行可能です(冪等性あり):
# Ubuntu パッケージのみインストール
./install/ubuntu/packages.sh
# Nix のみインストール
./install/common/nix.sh
# home-manager 設定の適用のみ
./install/common/home-manager.sh
macOS (nix-darwin) の場合
現状 setup.sh は Ubuntu/WSL 専用です。macOS では Determinate Nix 等で Nix 本体を別途導入したうえで、nix-darwin を直接使います。
git clone https://github.com/rito528/dotfiles.git ~/dotfiles
cd ~/dotfiles
# 初回のみ: nix-darwin をブートストラップする
sudo nix run nix-darwin -- switch --flake .#<エントリ名>
# 2回目以降
darwin-rebuild switch --flake .#<エントリ名>
<エントリ名> は flake.nix の darwinMachines に定義したキーです。新しい Mac を追加する場合は、ここに実マシンのエントリを追加してください。
modules/darwin/default.nix で homebrew.enable = true にしているため、Homebrew(未導入なら要インストール)経由で karabiner-elements などの cask も導入されます。
Karabiner-Elements の初期設定
config/karabiner/ のキーリマップルールは配置されるだけで自動有効化はされないため、初回のみ以下を行ってください。
- 初回起動時に表示される入力監視の権限許可を許可する
- Karabiner-Elements の「Complex Modifications」タブから「Add rule」を行い、配置されたルールを有効化する
Ghostty
macOS ではターミナルとして Ghostty を導入します(modules/ghostty.nix)。タブ・分割まわりのキーバインドは Windows Terminal に合わせてあります。
- アプリ本体は
~/Applications/Home Manager Apps/Ghostty.appに実体コピーされます(targets.darwin.copyApps.enable)。symlink のままだと Spotlight がインデックスせず、Spotlight や Launchpad から見つからないためです。 - 設定は
~/.config/ghostty/configに生成されます。darwin-rebuild switchのたびにghostty +validate-configで検証されるため、キー名を間違えると切り替え時に検出されます。
日常操作
セットアップ後、設定を変更した際は以下のコマンドで反映・確認します。
# 設定を適用
home-manager switch --flake .
# ドライランで確認(実際には変更しない)
home-manager build --flake .
# 世代の一覧
home-manager generations