oinume journal

Scratchpad of what I learned

brew install nodebrewできるようになった

ついカッとなってnodebrewのFormulaを週末に作ってしまった。後悔はしていない。勢いで作ったので2回ほどプルリクのレビューにひっかかってしまった。ドキュメント嫁的な指摘もあったりしてションボリしつつ、でもこれで nvm 使わなくなれるのでちょっと嬉しい。

Formula作る人向けのドキュメント

公式ドキュメントが充実しているので、下記の3ページを読んでからプルリク送ると良さげ。

nodebrewのFormulaを作るまでの過程

/usr/local/Library/Formula/nodebrew.rb を作る

他のを適当にコピーしても良いけど、たぶん

brew create <name>

のように作るのが正しい。

他のFormulaを参考にhomepage, url, sha1を設定する

sha1は適当でいい。そしておもむろにbrew install nodebrewしてみる。 そうすると、sha1の値が違うよと怒られるのでそこで表示されてるsha1をFormulaに書く。(ダウンロードurlが正しいことはちゃんと確認しましょうね。間違って変なアーカイブをだうんろーどしないように)

install メソッドを実装する

今回はbashzsh向けのcompletionファイルがあったのでそれもインストールするようにした。やり方はpyenvとかその辺のFormulaを参考にした。

caveats

インストールした後に表示される警告みたいなメッセージ。これもpyenvのを参考にした。

テスト

ちゃんとインストールされたかどうか簡単なテストを書く。

forkしてブランチ作ってプルリクを送る

git clone <forkしたhomebrewリポジトリ>
git checkout -b nodebrew
cd Library/Formula/
git add nodebrew.rb
git commit nodebrew.rb && git push

あとはプルリクエストを送る

プルリクで指摘されたこと

  • Homebrewが$HOMEにディレクトリ作っちゃダメだよ
    • nodebrewはインストール時に $HOME/.nodebrew/{default,node,src} ディレクトリを作る
    • ってかそのディレクトリ作る処理ってupstream(nodebrew)側でできないのかな?(Homebrewメンテナ)
    • nodebrew setup すれば作られるんだけど、この処理ではスクリプトをダウンロードする処理も込みで、ファイルをダウンロードするのはHomebrew的にNGそうだったので今回はnodebrew側でディレクトリ作る処理を外出しするようにした
  • brew audit nodebrewするとエラーになるよ(Jenkinsさんがプルリクを自動でテストしてた)
    • サーセン、これは事前にやれとドキュメントにも書いてありましたね。
  • /usr/local っていうパスを直接使っちゃダメだよ
    • varやHOMEBREW_PERFIXなどHomebrewが定義しているものを使いましょう。どういうものが定義されているかはここに書いてある。
  • testはもう少しちゃんと書こう
    • 最初は nodebrew help を実行してexit statusが正常かチェックするだけだったのだが案の定怒られたw
    • ので、nodebrew ls-remote して v0.10.0 が出力されていることをチェックするようにした。まぁやり過ぎるとキリがないのでこのぐらいでいいかなと思ったらレビューは通った

最後に

これでnvmがいらない子になりました。とにかく普段よく使っているソフトウェアに貢献できるとモチベーションが上がりますね。

サーバサイドJavaScript Node.js入門 (アスキー書籍)

サーバサイドJavaScript Node.js入門 (アスキー書籍)

MacのEclipseで「フォントが小さい」とお嘆きの方へ

解像度の高いMacEclipseは下のようになぜかPackage Explorerのフォントが小さい。Source EditorなどはEclipse上でフォントサイズを設定することができるけど、なぜかPackage Explorerはできない。

mac_eclipse_font_after

 

んで、色々調べてたどりついたのがMake Eclipse use larger fonts - Mac OS X Hintsという質問。TinkerToolというソフトを入れて フォント→ヘルプタグのフォントサイズを大きくすればいいらしい。

 

こんな感じで大きくなった!これは11pt -> 15ptに変更した場合のもの。

mac_eclipse_font_after

 

このTinkerToolというソフト、他にも色んな設定ができて便利そうな雰囲気。とりあえずMacEclipseで「フォントサイズが小さい」とお嘆きの人はぜひ試してみてほしい。

 

[tmkm-amazon]489471499X[/tmkm-amazon]

MacBookのDVDドライブが故障

昨年10月に購入したMacBookアルミニウムMB466J/AのDVDドライブが、先週の日曜日に突然DVDを読めなくなってしまいました。DVDを入れると「ウィーン、ウィーン」と何か頑張ってる感じがして「先生、もう駄目です」みたいな感じでイジェクトされるという現象。

 

ネットで調べたらおそらくドライブの故障っぽかったので、その日のうちに渋谷のApple Storeに行ってみたところ、速攻で入院決定。「明日には引き取れるようになってますんで」ということだったので、家に帰ったら修理に出してから3時間足らずで「修理完了しました」の電話が...

 

というわけでApple StoreのサポートのあまりのGJさにちょっとビビりましたが、そもそも半年でパーツが壊れるっていうところにApple製品の闇を見たような気がします。今回は購入から1年経ってなかったので保証がききましたが、保証が切れている場合¥45,000の修理代金がかかるらしく背筋がぞっとします。「Apple Care(¥31,500)に加入せよ」というありがたい神のお告げが聞こえてきますが、本当悩ましいです...