--> How do I get rid of ruby20 manually? Or at the very least *safely force* Portage to do it without whining about dependencies?
Long story short, I can't figure out how to get rid of ruby20 due to circular dependencies and/or Portage related shenanigans, and it's preventing me from updating some important things here and there.
Jumping between the following commands trying to figure out what's going on, in no particular order anymore:
Code: Select all
emerge @preserved-rebuild Code: Select all
emerge -cav Code: Select all
emerge -uavDN world Code: Select all
emerge -av --depclean = = = = =
Here's the story in a bit more detail:
> Running periodic updates
> "You have new news items to read."
> Saw the news, ( eselect news on ruby20's deprecation )
> Of course, it's preventing me from updating....pretty much anything.
> Eventually figured out Ruby:2.0 was the package I needed to address, first thing I did was check and run:
Code: Select all
eselect ruby set 21 And just for the record, I'm not sure exactly when it happened, but I added RUBY_TARGETS="ruby21" to make.conf, and it seemed to make things easier, though it didn't solve my problem.
Code: Select all
emerge -uavDN world Code: Select all
/usr/portage/distfi 100%[===================>] 196.18K 246KB/s in 0.8s
2016-12-14 01:50:00 (246 KB/s) - ‘/usr/portage/distfiles/code2color-0.2’ saved [200885/200885]
!!! Fetched file: code2color-0.2 VERIFY FAILED!
!!! Reason: Filesize does not match recorded size
!!! Got: 200885
!!! Expected: 200711
Refetching... File renamed to '/usr/portage/distfiles/code2color-0.2._checksum_failure_.WIU007'
!!! Couldn't download 'code2color-0.2'. Aborting.
* Fetch failed for 'sys-apps/less-481', Log file:
* '/var/tmp/portage/sys-apps/less-481/temp/build.log'
>>> Failed to emerge sys-apps/less-481, Log file:
>>> '/var/tmp/portage/sys-apps/less-481/temp/build.log'
* Messages for package app-emulation/xen-4.6.4-r3:
* To avoid automounting and auto(un)installing with /boot,
* just export the DONT_MOUNT_BOOT variable.
* Messages for package sys-apps/less-481:
* Fetch failed for 'sys-apps/less-481', Log file:
* '/var/tmp/portage/sys-apps/less-481/temp/build.log'
Next thing I did:
Code: Select all
equery depends ruby:2.0
* These packages depend on ruby:2.0:Code: Select all
emerge -cav ruby:2.0
WARNING: One or more repositories have been ignored due to duplicate
profiles/repo_name entries:
/, gentoo, /var/lib/layman/gentoo overrides
/usr/portage
All profiles/repo_name entries must be unique in order to avoid having
duplicates ignored. Set PORTAGE_REPO_DUPLICATE_WARN="0" in
/etc/portage/make.conf if you would like to disable this warning.
Calculating dependencies... done!
dev-lang/ruby-2.0.0_p648 pulled in by:
dev-ruby/json-1.8.2-r1 requires dev-lang/ruby:2.0
dev-ruby/racc-1.4.11 requires dev-lang/ruby:2.0
dev-ruby/rake-0.9.6-r1 requires dev-lang/ruby:2.0
dev-ruby/rdoc-4.2.0 requires dev-lang/ruby:2.0
dev-ruby/rubygems-2.2.5-r1 requires dev-lang/ruby:2.0
virtual/rubygems-10 requires dev-lang/ruby:2.0
>>> No packages selected for removal by depcleanSo as I run down the list spewing [ equery depends ___ ] and [ emerge -cav ___ ] for all those packages, but all those dependencies portage spews are, in turn, dependent on eachother, as well as Ruby 2.0 itself, so I can't seem to get rid of any of them.
Attempting to depclean all of those at ones yields the following:
Code: Select all
emerge -cav json racc rake rdoc rubygems
Calculating dependencies... done!
dev-ruby/json-1.8.2-r1 pulled in by:
dev-lang/ruby-2.0.0_p648 requires >=dev-ruby/json-1.7.7[ruby_targets_ruby20]
dev-lang/ruby-2.1.9 requires >=dev-ruby/json-1.8.1[ruby_targets_ruby21]
dev-ruby/rdoc-4.2.0 requires >=dev-ruby/json-1.4[ruby_targets_ruby21], =dev-ruby/json-1*[ruby_targets_ruby20], =dev-ruby/json-1*[ruby_targets_ruby21], >=dev-ruby/json-1.4[ruby_targets_ruby20]
dev-ruby/racc-1.4.11 pulled in by:
dev-ruby/rdoc-4.2.0 requires dev-ruby/racc[ruby_targets_ruby20], dev-ruby/racc[ruby_targets_ruby21]
dev-ruby/rake-0.9.6-r1 pulled in by:
dev-lang/ruby-2.0.0_p648 requires >=dev-ruby/rake-0.9.6[ruby_targets_ruby20]
dev-lang/ruby-2.1.9 requires >=dev-ruby/rake-0.9.6[ruby_targets_ruby21]
dev-ruby/json-1.8.2-r1 requires dev-ruby/rake[ruby_targets_ruby21], dev-ruby/rake[ruby_targets_ruby20]
dev-ruby/racc-1.4.11 requires dev-ruby/rake[ruby_targets_ruby21], dev-ruby/rake[ruby_targets_ruby20]
dev-ruby/rdoc-4.2.0 pulled in by:
dev-lang/ruby-2.0.0_p648 requires >=dev-ruby/rdoc-4.0.0[ruby_targets_ruby20]
dev-lang/ruby-2.1.9 requires >=dev-ruby/rdoc-4.0.1[ruby_targets_ruby21]
dev-ruby/rubygems-2.2.5-r1 pulled in by:
virtual/rubygems-10 requires >=dev-ruby/rubygems-2.0.2[ruby_targets_ruby20], >=dev-ruby/rubygems-2.0.14[ruby_targets_ruby21]
>>> No packages selected for removal by depcleanHere's something else. [ emerge @preserved-rebuild ] only yielded this:
Code: Select all
Calculating dependencies... done!
[ebuild R ] sys-process/htop-1.0.3
[ebuild R ] media-sound/alsa-utils-1.0.29
[ebuild R ] sys-apps/less-481
[ebuild U ] dev-qt/qtcore-5.6.2-r1 [5.6.1]
[ebuild R ] dev-libs/libxml2-2.9.4
[ebuild R ] dev-libs/boost-1.56.0-r1
[ebuild R ] dev-util/cmake-3.5.2-r1
[ebuild R ] media-libs/raptor-2.0.14
[ebuild R ] app-text/libmspub-0.1.2
[ebuild R ] app-text/libebook-0.1.2-r1
[ebuild R ] media-libs/libcdr-0.1.1
[ebuild R ] media-libs/libvisio-0.1.5
[ebuild R ] sys-devel/llvm-3.7.1-r3 VIDEO_CARDS="radeon*"
[ebuild R ] media-sound/jack-3.1.1-r1
[ebuild R #] dev-lang/ruby-2.0.0_p648
[ebuild R ] sys-devel/gettext-0.19.7
[ebuild R ] sys-process/psmisc-22.21-r3
[ebuild R ] sys-apps/texinfo-6.1
[ebuild R ] app-text/hunspell-1.3.3
[ebuild R ] app-editors/nano-2.5.3
[ebuild R ] dev-libs/libcdio-0.92
[ebuild R ] media-libs/imlib2-1.4.9
[ebuild R ] sys-libs/gpm-1.20.7-r2
[ebuild R ] app-misc/screen-4.3.1-r1
[ebuild U ] www-client/w3m-0.5.3-r9 [0.5.3-r5] USE="(-libressl)"
[ebuild R ] app-text/aspell-0.60.6.1-r1
[ebuild R ] x11-terms/xterm-325
[ebuild R ] media-libs/harfbuzz-1.3.1
[ebuild R ] x11-libs/vte-0.28.2-r207
[ebuild U ] app-crypt/pinentry-0.9.7-r1 [0.9.5] USE="-qt5%"
[ebuild R ] dev-qt/qtwebkit-4.8.6-r1
[ebuild R ] app-benchmarks/i7z-0.27.2
[ebuild R ] net-fs/samba-4.2.11
[ebuild R ] app-editors/emacs-24.5-r3
[ebuild R ] x11-libs/vte-0.36.5
[ebuild R ] sys-apps/util-linux-2.26.2
[ebuild R ] sys-apps/gptfdisk-1.0.1
[ebuild R ] sys-block/parted-3.2
[ebuild R ] media-video/ffmpeg-2.8.6
[ebuild R ] dev-libs/efl-1.17.0
[ebuild R ] media-video/vlc-2.2.4 [2.2.4]
[ebuild R ] net-libs/webkit-gtk-2.4.11-r200
The following mask changes are necessary to proceed:
(see "package.unmask" in the portage(5) man page for more details)
# required by @preserved-rebuild (argument)
# /var/lib/layman/gentoo/profiles/package.mask:
# Hans de Graaff <graaff@gentoo.org> (07 Dec 2016)
# Mask ruby 2.0 for removal, bug 576034
=dev-lang/ruby-2.0.0_p648
NOTE: The --autounmask-keep-masks option will prevent emerge
from creating package.unmask or ** keyword changes.
Use --autounmask-write to write changes to config files (honoring
CONFIG_PROTECT). Carefully examine the list of proposed changes,
paying special attention to mask or or keyword changes that may expose
experimental or unstable packages.Things get a little hazy after this point, since this is where I ended up with 30+ tabs of research on Chromium, but here's something else that may provide insight?
Invoking...
Code: Select all
emerge -av --depclean Code: Select all
* Have you forgotten to do a complete update prior to depclean? The
* most comprehensive command for this purpose is as follows:
*
* emerge --update --newuse --deep --with-bdeps=y @world
*
* Note that the --with-bdeps=y option is not required in many
* situations. Refer to the emerge manual page (run `man emerge`)
* for more information about --with-bdeps.
*
* Also, note that it may be necessary to manually uninstall
* packages that no longer exist in the portage tree, since it may
* not be possible to satisfy their dependencies.
I'm at a complete loss, so just to recap, my questions:
--> How the dick do I get rid of Ruby20?
--> ^^^ Regarding the miscellaneous notices about config files, (and the checksum for sys-apps/less) ARE those separate issues or did I let something slip past me? I don't really consider myself too n00b-ish but there are suddenly a lot of things going on I've never seen before.
--> Is it safe to run [ emerge --unmerge ] on Ruby? I'm about 90% certain, but I'd rather not complicate things any more than I already have.
--> Did I just miss something incredibly obvious? I don't think I've ever had this much trouble dealing with Portage.






