OSごとの設定は、os_hoge/
に置きます。例えば、Linuxならos_linux
などです。
各種ツールは、.hoge/
などに置きます。例えば、.zsh
などです。
シェルスクリプトは、bin/
に置きます。
ダウンロードした圧縮ファイルは、tmp/
に置きます。
お気に入りフォントやパッチを当てたフォントは、.fonts/
に置きます。
~/dotfilesのディレクトリ例
├── .fonts
├── .sublime-keymap
├── .sublime-settings
├── .tmux
├── .tmux.conf
├── .vim
├── .vimrc
├── .zsh
│ └── functions
│ └── _download-manager-zsh
├── .zshrc
├── README.md
├── bin
│ ├── dotfiles_doc_add
│ ├── download-manager-zsh
│ ├── iterm_window_transparency
│ └── used-mem-simple
├── doc
│ ├── dotfiles.txt
│ ├── download.txt
│ ├── keybind.txt
│ ├── memo.txt
│ ├── setting.txt
│ └── tips.txt
├── download.sh
├── os_cygwin
│ └── .zshrc
├── os_linux
│ └── .zshrc
├── os_mac
│ ├── .sublime-keymap
│ ├── .sublime-settings
│ ├── .tmux.conf
│ └── .vimrc
├── os_windows
│ └── profile.ps1
├── package.sh
├── setup.sh
└── tmp
##setup.sh
setup.sh
は、各種設定ファイルへのシンボリックリンクとdownload.sh
、package.sh
の実行を書きます。
初期のセットアップに行うファイルのダウンロードはdownload.sh
に書きます。
初期のセットアップに行うパッケージマネージャーのコマンドはpackage.sh
に書きます。
これらは、以下のようなコマンドで実行できるようにしておきます。
$ curl -L https://raw.github.com/syui/dotfiles/master/setup.sh | sh
setup.sh
の中身は、以下の様な感じになります。
~/dotfiles/setup.sh
#!/bin/bash
# dotfilesのダウンロード
git clone https://raw.github.com/syui/dotfiles.git
# シンボリックリンク
file="{.zsh,.zshrc,.tmux,.tmux.conf,.vim,.vimrc}"
ln -s $HOME/dotfiles/$file $HOME/$file
# ダウンロード
. ~/dotfiles/download.sh
# パッケージ
. ~/dotfiles/package.sh
あと、補足としては、OSを自動判定し、シンボリックリンクを貼るようにすれば、便利です。