2015-08-01

23:31:40

久しぶりに Mac を触っていた。

homebrew

homebrew-cask とか homebrew-file とかが便利だったので、ソフトウェアのインストールは基本的に homebrew で一元管理することにした。

ただ、 Apple store で入れる必要があるものは brewfile には記録できるものの自動でインストールするのはできないようだ。

brewfile はオワコンみたいな記事がいくつかあったけど、homebrew と別プロジェクト切り離されただけっぽいので、使ってみたら便利だった。

brew file init を実行すると現状 brew でインストールしている一覧を brewfile に書き込んでくれるのが楽だった。 そのため、日常的に気軽に brew install して気が向いた時に brew file init && brew file push するようにしている。 (当然 brewfile は github で管理するようにしたため)

https://github.com/rcmdnk/homebrew-file#use-github-or-any-git-repository-for-brewfile-management がちょっと良くわからなかったけど、 http://www.task-notes.com/entry/20150316/1426474800 のブログ記事がわかりやすかった。

homebrew は良く出来ていると思う。

他の開発環境など

良い機会なのでエディタを atom にした。 前々から atom にしたいとはずっと思っていたんだけど、なぜか僕の Debian 環境だとうまく動かなかったので放置していた。 (おそらく node 等を自分で入れているせいなので、 Debian を入れなおして環境を綺麗にすれば動くと思う)

SublimeText3 は Linux だと日本語が入力できないこと以外は特に不満ないけど、もはやユーザーは atom に移っていると思うので、私も完全 atom 以降したい。

ターミナルははじめは標準のでもいいかなと思っていたけど、tmux と合わせて使った時に細かいところが気に入らなかったので、結局 iterm2 をいれた。 mac のターミナルで command と control がぐちゃぐちゃになる感じがあるんだけど、あれはどうも気に入らないなぁ。。。やっぱり。 macでターミナル使う人はあのへんはあきらめているんだろうか。 mac と linux を併用しているとだいぶ辛いんだけど…。 結局僕の場合、 iterm2 上だけは command と control を入れ替えているけど、それはそれで使うにくいという…。 この辺は諦めたほうが良さそうかなぁ。 あと全体的に Home と End の挙動が Linux と違うのだいぶ面倒くさい…。

Rails の開発環境として DB や Node.js などをいれる必要があるけど、この辺は docker-compose でまとめていく予定。 docker が苦しいケースでは vagrant を使うとか、適当に調整したい。 もはや必要なソフトウェアのバージョンがシビアになる開発環境まわりをローカルに直接入れたくないので、この辺はすべて仮想環境で動かせるようにしたい。 できれば gem や ruby も仮想環境に入れてしまったほうが良い気がする。 メモリとかディスク容量は無駄になる部分もあるけど、その程度で依存関係が切れになるならそっちのほうがいいし、気軽に再構築できる開発環境はやはり便利。 ただ、Linux 環境なら vagrant-lxc のような手段もあるわけで… この辺もあるものでなんとかしよう。docker を積極的に使いたい。

雑感

Linux が一番使いやすいな〜と思いつつ、 mac や windows でしか動かないソフトも結構あるが悩みどころ。 以前ほどではないとは思いつつ…。

mac はまだ細かいところを諦めれば使えるのでまーいいかー。 面倒なのは .zshrc などの設定ファイルを mac 用と linux 用を用意する必要があって、管理が面倒くさいこと。。。 共通して使える部分は1ファイルにしておいて、 各OSの .zshrc から source で読み込むのが筋が良さそう。 prezto になるべく寄せたいけど、これもあんまりうまくいってない…。

環境周りはそろそろ作り直しの時期なのかもしれない。 もーひたすらに面倒くさい。 やってると時間だけ過ぎていくし…。

comments powered by Disqus
kbaba1001 profile photo
馬場 一樹 ( @kbaba1001 )
A programmer. Ruby on Rails, SublimeText, zsh, Linux.
Twitter,GitHub