個人用の設定ファイル管理リポジトリ(Nix + nix-darwin + Home Manager)
git clone https://github.com/0tarof/dotfiles.git ~/projects/github.com/0tarof/dotfiles
cd ~/projects/github.com/0tarof/dotfiles
./bootstrap.sh# 設定ファイルを変更後、反映
nix-rebuild会社PCなど、環境固有の設定を使いたい場合はoverlay/ディレクトリを利用できます。
- 会社のdotfilesリポジトリをoverlay/にクローン
cd ~/projects/github.com/0tarof/dotfiles
git clone https://github.com/COMPANY/dotfiles.git overlay- overlay/nix/home.nix に環境固有のHome Manager設定を配置
{ config, lib, pkgs, ... }:
{
home.packages = with pkgs; [
# 会社固有のパッケージ
];
}この設定は自動的に読み込まれます。
overlay/ディレクトリは.gitignoreに含まれているため、個人リポジトリにはpushされません。
flake.nix- Nix flake設定home/default.nix- Home Manager設定(ユーザーパッケージ、dotfiles)hosts/darwin/default.nix- macOS固有設定(Homebrew含む)
.gitconfig- Git設定(基本設定)bootstrap.sh- 初期セットアップスクリプトoverlay/- 環境固有の設定(gitignore対象)
| 項目 | 管理方法 |
|---|---|
| CLI ツール | home.packages (Nix) |
| GUI アプリ | homebrew.casks (nix-darwin) |
| Zsh 設定 | programs.zsh (Home Manager) |
| dotfiles | home.file (Home Manager) |
| macOS 設定 | nix-darwin |
- 基本設定(このリポジトリの設定)
- overlay/内の設定(存在する場合、基本設定を上書き)