2008-12-18
■ [ruby] --
- この記事はobsoleteです
- Github上でのgem生成機能は終了しました。rubygems.orgを使いましょう。
GitHubに自作gemを置く方法
Rubyでライブラリをインストールする手段といえばgemコマンドなわけだけど、
$ gem sources -a http://gems.github.com
としておくとgithubで公開されているライブラリをgem installでインストールできるようになるのはご存じだろうか?
例えば上の状態で
$ gem install yhara-ruby-sl
とすると、http://github.com/yhara/ruby-sl/tree/master のgemがインストールされる {[fn "されない場合はrubygemsのバージョンが古いかもしれない。とりあえず1.3以降なら大丈夫だと思う。"}。「(ユーザ名)-(プロジェクト名)」がgem名になるわけだ。
だがgithubにプロジェクトを作るだけでgemが作られるわけではない。現在公開されているgemは以下のページで一覧できる。
githubでgemを公開する方法
githubにgemを自動生成させるには、以下のことをすればいい。
- 自分のプロジェクトのページで「edit」を押して、設定の「RubyGem:」という欄にチェックを入れる。
- gemspecファイルをコミットする。
- しばらく待つと、gemが公開される。
もう少し詳しく解説しよう。
gemspecファイルの作成
2.のgemspecファイルは、例えば以下のようなものだ。
これは必ずしも手書きする必要はなく、例えばfork版cutagemを「gem install genki-cutagem」で インストールしておくと、
$ cutagem プロジェクト名
としたときに、自動的にRakefileが生成され、「rake gemspec」でgemspecファイルを作れるようになる(Rakeが入っていない人はgem install rake)。
ビルドできるか確認
gemspecファイルをコミットしてpushする前に、
gem build プロジェクト名.gemspec
でちゃんとgemができるかどうか確認しておこう。いったんgemspecファイルをpushしてしまうと、バージョン番号などどこかを 修正しないと新しくgemがビルドされない。
またgemspecファイルをpushしてから新しいバージョンがインストールできるようになるまで、10分かそこらの時間がかかる (http://gems.github.com/list.html に反映されるのはさらに後のようだ)。
参考
あ、最初の説明で実際に「gem install yhara-ruby-sl」としてしまった人には、くだらないライブラリをインストールさせてしまって申し訳ない。 ruby-slの使い方は以下のようになる。
$ irb -r rubygems irb(main):001:0> require 'sl' => true irb(main):002:0> SL.run!
■ [web] うごメモはてな
任天堂ときたかー。
- http://ugomemo.hatena.ne.jp/
- http://ugomemo.hatena.ne.jp/opening_campaign
- http://d.hatena.ne.jp/ugomemohatena/20081218/1229578200
どうも作品へのリンクを張ると自動再生されてしまう仕様らしいので、音付きの物は避けた。