UNIX / Linux / macOS 用の設定ファイル。
- Git
- Zsh
- cURL (自動インストールの場合)
このリポジトリを ~/dotfiles に clone してセットアップ用スクリプトを実行する。
$ git clone https://github.com/hiroxto/dotfiles ~/dotfiles
$ cd ~/dotfiles
$ zsh initialize.zshscripts/utils/auto-install.bash を使うと手動インストール相当の処理を自動で行える。
$ bash -c "$(curl -s https://raw.githubusercontent.com/hiroxto/dotfiles/refs/heads/main/scripts/utils/auto-install.bash)"ログインシェルが zsh になっていない場合, chsh を使ってログインシェルを zsh へ切り替える。
切り替え後は一旦ログアウトする。
$ which zsh
$ chshdotfiles で設定される .gitconfig では PGP 署名の設定をしていない。
コミットを作成する場合は PGP 署名をしたいのでコミットを作成する環境では必ず設定する。
.gitconfig.local に設定を書く事で dotfiles で同期をせずにローカルのみの設定をする事が可能な仕組みにしている。
.gitconfig.local に user.signingkey,gpg.program,commit.gpgsign,tag.gpgsignを設定することで PGP 署名が出来るようになる。
[user]
signingkey = <signingkey>
[gpg]
program = /opt/homebrew/bin/gpg
[commit]
gpgsign = true
[tag]
gpgsign = true
仕事でコミットを作成する場合は仕事で使っているメールアドレスを使いたいので別途設定する。
.gitconfig.local で特定のディレクトリ以下では別の設定を読み込むようにする。
ghq でリポジトリを管理する場合は以下のようになる。
[includeIf "gitdir:~/ghq/github.com/your-organization"]
path = ~/.gitconfig.organization
.gitconfig.organization を作成し, Organization での設定項目を書く。
[user]
name = Foo Bar
email = foo@example.com
bin-dotfiles/pull-dotfiles コマンドを使うとdotfiles本体とdotfilesでインストールされているツール一式が更新される。
dotfiles の bin-dotfiles/ はパスが通っているので pull-dotfiles で実行可能。
$ pull-dotfiles下手に手を加えてローカル環境に影響を与えたくない時は VSCode の Remote Development で検証する。
# 設定ファイルをコピー
$ ./.devcontainer/copy-devcontainer-files.sh