Ubuntu/DebianでRubyGemsをアップデートしたら格納場所が変わってギャーッとなる人へ

通常Debian/UbuntuRubyGemsでは、RubyGemsの環境は(gem environment)以下のようになっていると思いますが、

  • INSTALLATION DIRECTORY: /var/lib/gems/1.8
  • EXECUTABLE DIRECTORY: /var/lib/gems/1.8/bin

gem update --system や rubygems_update などを使ってRubyGems本体をアップデートすると、パスが書き換わってしまいます。

そこで、Debina/Ubuntu流に戻す方法を書きます。

詳しくは、RubyGemsパッケージをダウンロードして、その中のパッチ(debian/patches/01_default_gem_path.dpatch)をみてもらいたいんですが、簡単に。

/usr/lib/ruby/1.8/rubygems/defaults.rb の以下のメソッドを書き換えましょう。

  def self.default_dir
    File.join('/', 'var', 'lib', 'gems', ConfigMap[:ruby_version])
  end

あと、これも、

  def self.default_bindir
    File.join('/', 'var', 'lib', 'gems', ConfigMap[:ruby_version], 'bin')
  end

という風な感じで。


それでは、ハッピーUbuntu/Debianライフを!

@ugnewsさんの初Ubuntuインストールを手伝った

twitter@ugnewsさんが「Ubuntuの入れ方おしえて・・・」と助けを求めておりましたので、軽い気持ちで引き受けたのですが、15:00 〜 01:00 までかかりました。

Skypeのテキストチャットでのやりとりだったので、もう大変。

当初の計画はWindows XPとのデュアルブートだったのですが、なぜか /dev/sdb にWindowsが入っていて、上書きインストールしてしまいました。失敗です。@ugnewsさんが「まぁいいや、完全Ubuntuサーバでいこう」と計画を変更してくれたので、/dev/sda を増設HDDと見立ててマウントということで落ち着きました。

いやー、お互いに全力を出して頑張りましたねー。10時間マラソンお疲れ様でした。

サーバ設定のリモートサポートでコツがあれば、コメント欄で教えてもらえると助かります。

Thinkpad のセンターボタンスクロールを有効にする方法

/etc/hal/fdi/policy/mouse-wheel.fdi に、

<match key="info.product" string="TPPS/2 IBM TrackPoint">
 <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
 <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
 <merge key="input.x11_options.XAxisMapping" type="string">6 7</merge>
 <merge key="input.x11_options.YAxisMapping" type="string">4 5</merge>
 <merge key="input.x11_options.ZAxisMapping" type="string">4 5</merge>
 <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
</match>

と書いて再起動すればおk。と日本語の情報は言うのだが、実際は、

sudo rm /var/cache/hald/fdi-cache

しないとダメ。
fdi-cache を削除しないと再起動しても設定が反映されない。

再起動が必要なのはXだけなので、

sudo /etc/init.d/hal restart
sudo /etc/init.d/gdm restart

でおk。