emergeうどんワールドとの戦い
参考資料 http://bpaste.net/show/225618/
emergeは聖徳太子じゃないみたいなので、今後はややこしいお願いは単独でしようと思いました。
libvdpau
emerge -p1u xorg-serverを眺めてみて、目に止まったxcb周りから攻めてみることに。
conflictせずにupdateできるのを手探りで探した結果、libxcb->xcb-proto->xpybにたどり着いた。
もうひとつ片付けておこうと思ってlibX11もupdate。
その後xorg-serverと一緒にlibvdpauも難なく入りましたとさ。
perl
$ sudo emerge -1u perl These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-lang/perl-5.12.4-r1 WARNING: One or more updates have been skipped due to a dependency conflict: dev-lang/perl:0 (dev-lang/perl-5.16.3::gentoo, ebuild scheduled for merge) conflicts with dev-lang/perl[-build] required by (dev-perl/Error-0.170.160::gentoo, installed) (dev-lang/perl-5.16.3::gentoo, ebuild scheduled for merge) conflicts with dev-lang/perl[-build] required by (dev-perl/Cairo-1.90.0::gentoo, installed) (dev-lang/perl-5.16.3::gentoo, ebuild scheduled for merge) conflicts with dev-lang/perl[-build] required by (dev-perl/Net-Daemon-0.480.0::gentoo, installed) (dev-lang/perl-5.16.3::gentoo, ebuild scheduled for merge) conflicts with dev-lang/perl[-build] required by (dev-perl/File-MimeInfo-0.150.0::gentoo, installed)
$ sudo emerge -1u Error Cairo Net-Daemon File-MimeInfo Calculating dependencies... done! [ebuild U ] dev-perl/Cairo-1.103.0 [1.90.0] [ebuild U ] dev-perl/File-MimeInfo-0.170.0 [0.150.0] [ebuild U ] dev-perl/Error-0.170.210 [0.170.160] WARNING: One or more updates have been skipped due to a dependency conflict: dev-lang/perl:0 (dev-lang/perl-5.16.3::gentoo, ebuild scheduled for merge) conflicts with dev-lang/perl[-build] required by (dev-perl/extutils-depends-0.304.0::gentoo, installed)
$ sudo emerge -1u extutils-depends [ebuild r U ] dev-lang/perl-5.16.3 [5.12.4-r1] [ebuild U ] dev-perl/extutils-depends-0.305.0 [0.304.0] [ebuild rR ] dev-perl/Net-Daemon-0.480.0-r1 [ebuild rR ] dev-perl/PlRPC-0.202.0-r2 [ebuild rR ] dev-perl/Error-0.170.210 [ebuild rR ] dev-perl/Cairo-1.103.0 [ebuild rR ] dev-vcs/subversion-1.7.14
唐突にゴールした。
cabal
(dev-haskell/cabal-1.16.0.3::gentoo-haskell, installed) pulled in by >=dev-haskell/cabal-1.8:0/1.16.0.3= required by (dev-haskell/hoogle-4.2.16::gentoo-haskell, installed)
subslot使ってますね。
https://wiki.gentoo.org/wiki/Sub-slots_and_Slot-Operators
これこそ自動で解決してくれそうだけど・・・まあいいや。
ここまでの流れから、updateしたいパッケージにバージョンを明示して、そのsubslotに依存してるパッケージも同時に指定してみる。
$ sudo emerge -1 =dev-haskell/cabal-1.18.1.2 hoogle
いけた。けれど他にも詰まり、ちょうどUSEフラグ変更して一式emergeし直しだったので、haskell周りを少しworldから除外して作業することに・・・
# ghc消す必要はなかったなー
ruby
ひねくれた依存解決をした結果ruby2.1を無理に入れようとしていると思い込んでいたのだけど、よく見るとruby2.1がworldに入っていることになっている。eixで確認したら確かに(~)amd64になってる。
以前mikutterを入れたときにautounmask-writeして、>=ruby-1.9.3_rc1 ~amd64がaccept_keywordsに入ってた。。。
mikutterに必要なrubyはstableになっているので、これを消して解決。
仕上げ
依存解決に時間かかるからって理由で--deep付けずにいじっていたので、それぞれ途中でこけたりしてます。
ので改めてemerge -uDN @world。あとさっき見かけた--with-bdeps=yも付けてみる。
まだ途中だけど多分無事に終わる。終わって。