Vine Linux バグトラッキングシステム

課題の詳細を表示 コメントにジャンプ ] 課題の履歴 ] 印刷 ]
IDプロジェクトカテゴリ登録日最終更新
0002813VineSeed[全プロジェクト] カテゴリなし2014-09-17 14:502015-12-19 22:37
報告者inagaki 
担当者 
優先度再現性毎回 
状態新規解決状況実装済 
概要0002813: vbuilder 上で emacs のインストールに失敗する
説明vbuilder 上で emacs のインストールを行おうとすると、スクリプト実行時にエラーが発生してしまします。/usr/lib/emacsen-common/generate-flavors-list かと思われます。

(snip)
  emacs-24.3.93-1vl7.i686 ############################## [100%]
/usr/share/rubygems/rubygems/path_support.rb:78:in `path=': undefined method `+' for nil:NilClass (NoMethodError)
    from /usr/share/rubygems/rubygems/path_support.rb:34:in `initialize'
    from /usr/share/rubygems/rubygems.rb:324:in `new'
    from /usr/share/rubygems/rubygems.rb:324:in `paths'
    from /usr/share/rubygems/rubygems.rb:347:in `path'
    from /usr/share/rubygems/rubygems/specification.rb:858:in `dirs'
    from /usr/share/rubygems/rubygems/specification.rb:736:in `stubs'
    from /usr/share/rubygems/rubygems/specification.rb:924:in `find_inactive_by_path'
    from /usr/share/rubygems/rubygems.rb:185:in `try_activate'
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:132:in `rescue in require'
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:144:in `require'
    from <internal:abrt_prelude>:2:in `<compiled>'
/usr/share/rubygems/rubygems/path_support.rb:78:in `path=': undefined method `+' for nil:NilClass (NoMethodError)
    from /usr/share/rubygems/rubygems/path_support.rb:34:in `initialize'
    from /usr/share/rubygems/rubygems.rb:324:in `new'
    from /usr/share/rubygems/rubygems.rb:324:in `paths'
    from /usr/share/rubygems/rubygems.rb:347:in `path'
    from /usr/share/rubygems/rubygems/specification.rb:858:in `dirs'
    from /usr/share/rubygems/rubygems/specification.rb:736:in `stubs'
    from /usr/share/rubygems/rubygems/specification.rb:924:in `find_inactive_by_path'
    from /usr/share/rubygems/rubygems.rb:185:in `try_activate'
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:132:in `rescue in require'
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:144:in `require'
    from <internal:abrt_prelude>:2:in `<compiled>'
完了
再現方法sudo vbuilder clean build
sudo vbuilder install-rpm emacs
追加情報エラーを吐いている path_support.rb で参照されている変数を見たところ、vbuilder 環境上では反映されていない模様です。vbuilder のみでエラーとなるのはこのあたりが原因?

** 実機環境
[inagaki@munich specs]$ ruby -e 'puts Gem.default_path'
/home/inagaki/.gem/ruby/2.1.0
/usr/share/gems/2.1.0
/usr/local/share/gems/2.1.0

** vbuiler
[inagaki@munich specs]$ sudo chroot /var/local/vbootstrap/VineSeed_x86_64 /bin/sh -c -l 'cd /home/vbuilder/rpm && /usr/bin/ruby -e 'puts Gem.default_path''
[sudo] password for inagaki:

(↑実行結果として空行が出力されています)
タグ設定されていません。
archx86, x86_64
パッケージvbootstrap-0.1-2vl7
添付ファイルpatch file icon vbuilder-gempath.patch [^] (1,271 バイト) 2015-01-29 16:24 [表示]

- 関連

-  コメント
(0008947)
inagaki (開発者)
2014-10-26 13:45

Seed にある emacs-24.4 で試してみましたが、
vbuilder 内にはインストールできませんでした。
(0009174)
inagaki (開発者)
2015-01-29 16:35

少し追いかけてみましたが、環境変数 GEM_PATH が(空であっても)存在すれば、chroot 環境下で ruby が動作することを確認しました(chroot 環境下でなぜこのような現象が起こるのかについてまでは追いかけていません)。

そこで、vbuilder 内で apt-get install 実行時に "GEM_PATH= " と強制的に環境変数を渡すことで、当該エラーは回避され、emacs 関連パッケージがインストールできるようになりました。

変更点をパッチファイルとして添付します。
アドホックな修正なので、これでよいのかも含めて適用の是非を判断いただきたく願います。

# もっとスマートな解決法はありそうな気はするのですが、、、

- 課題の履歴
変更日 ユーザー名 項目 変更内容
2014-09-17 14:50 inagaki 新規課題
2014-10-26 13:45 inagaki コメント追加: 0008947
2015-01-26 05:37 inagaki 追加情報更新 リビジョンを表示
2015-01-29 16:24 inagaki 添付ファイル追加: vbuilder-gempath.patch
2015-01-29 16:35 inagaki パッケージ => vbootstrap-0.1-2vl7
2015-01-29 16:35 inagaki コメント追加: 0009174
2015-01-29 16:35 inagaki 解決状況 不明 => 実装済
2015-12-19 22:36 tomop カテゴリ 1 バグ => カテゴリなし
2015-12-19 22:37 tomop プロジェクト Vine Linux => VineSeed


Copyright © 2000 - 2017 MantisBT Team
Copyright © 2012 - 2017 Project Vine
Powered by Mantis Bugtracker