Skip to content

sonicjam/dotfiles

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

よくある dotfiles リポジトリの一つです。社内の PC (主に Mac OS X で) CLI 環境を比較的簡単に構築できるようにする目的で作成しています。

インストール

インストールと更新は下記のコマンドをコピーアンドペーストして実行して下さい:

bash <(curl -L https://raw.github.com/sonicjam/dotfiles/master/bootstrap.sh)

Git を使用せずインストール/更新を行う場合は ~/.dotfiles にリポジトリの中身を展開し、下記コマンドを実行して下さい:

bash ~/.dotfiles/bootstrap.sh sync

.bash_creds

追加の設定ファイルとして ~/.bash_creds というファイルを作成しておくと、自動で読み込まれます。用途としては Git リポジトリで共有できないような環境変数値 (シークレットトークン等) を格納するのに使用します。

.bash_creds の例は下記です:

#
# 証明書


##
# Amazon EC2 API Tools

export AWS_ACCESS_KEY='XXXXXXXXXXXXXXXXXXXX'
export AWS_SECRET_KEY='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'


##
# gisty

export GISTY_ACCESS_TOKEN='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

必要環境

Mac OS X

Linux

  • Ubuntu 12.04 辺りに対応したい (希望的観測)

機能

Mac OS X

インストール時のおおまかな処理の流れは以下の通りです。更新時はインストール時のみの処理は基本的にスキップします:

  1. ~/.dotfiles ディレクトリを作成しリポジトリのファイルをダウンロードします。
  2. Time Machine のローカルスナップショット機能を無効化します。
  3. ログイン時実行される ~/.dotfiles/darwin/hook.sh をインストールします。
  4. .DS_Store をネットワークドライブ上で作成しない設定をします。
  5. 隠しファイルを非表示から表示するように変更します。
  6. Kotoeri のデフォルト空白文字を全角から半角に設定します。
  7. スクリーンショットの影を無効にします。
  8. XQuartz をインストールします。
  9. Asepsis をインストールします。
  10. Xcode のライセンス同意画面を表示します。
  11. Homebrew をインストールします。
  12. Homebrew で基本的なライブラリをインストールします。
  13. nodebrew で Node.js をインストールします。
  14. ~/.dotfiles/darwin ディレクトリのドットファイルをホームディレクトリにシンボリックリンクします。

グルーバルな初期処理

  • XQuartz のインストール
    • Mac OS X で最新の X Window 環境を使用可能にします。
    • 標準でインストールされている X11 の置換が目的です。
  • Asepsis のインストール
    • .DS_Store ファイルを /usr/local/.dscage ディレクトリ下に集約して作成するようにします。
    • .DS_Store ファイルは標準だとあちこちのディレクトリに無断で作成され、無駄なので、これを改善します。

ローカルな初期処理

  • Homebrew のインストール
    • MacPorts より開発コミュニティが活発な Homebrew をパッケージマネージャーとして使用します。
    • グローバル環境をなるべく綺麗な状態に保つため、~/.homebrew にインストールします。
    • Git, Python, Ruby を Homebrew 経由で最新版をインストールします。グローバルの Python や Ruby 環境を綺麗な状態に保つのも目的です。
  • nodebrew を使用して Node.js をインストールします。
    • Node.js は ~/.nodebrew 下にインストールされます。
    • Node.js はまた開発途上のためバージョンアップが頻繁なので、簡単に以前のバージョンや最新バージョンへ切り替えられるようにするのが目的です。

グローバルな設定変更

  • Time Machine のローカルスナップショットを無効にします。パフォーマンス改善と SSD 環境での書き込み回数の消費数削減が目的です。
  • LoginHook をインストールします。ユーザーログイン毎に次のスクリプトが毎回実行されます:
    • ~/.dotfiles/darwin/hook.sh
    • スクリプトの内容はメモリ上に 128 MB の ramdisk を作成し、~/Library/Caches 内の web ブラウザキャッシュディレクトリを ramdisk 上にシンボリックリンクします。
    • Ramdisk なので、再起動毎にキャッシュディレクトリは削除されます。
    • ブラウザキャッシュは削除する機会が多いので、自動化できる事、SSD 環境での書き込み回数消費数削減が目的です。

ローカルな設定変更

  • 以下のファイルを置換します。既存のファイルは .orig の接尾辞を付けた名前に変更してバックアップします。
    • ~/.bash_profile
    • ~/.bashrc
    • ~/.gitattributes
    • ~/.gitconfig
    • ~/.gitignore
  • Git のデフォルト user.nameuser.email を入力プロンプトから設定してもらいます。

謝辞

ライセンス

Distributed under the Unlicense.

About

基本的な環境構築用 dotfiles リポジトリ

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%