Ruby 3.0 masking and rubygems dependency

Posted: 2023-08-21 by Horst Prote | Revision: 3
Format:
2.0
Display if installed:
www-apps/gitlab
Recent Gentoo update brought along the masking of Ruby 3.0:
  • dev-lang/ruby-3.0.6-r3::gentoo (masked by: package.mask)
/usr/portage/profiles/package.mask: # Hans de Graaff <graaff@gentoo.org> (2023-08-19) # Ruby 3.0 is not compatible with OpenSSL 3 and consequently will be # masked earlier than its upstream EOL date. Please use a newer Ruby # version instead. Masked for removal on 2023-09-19.

Since GitLab still works on the migration to Ruby 3.1 (see https://gitlab.com/groups/gitlab-org/-/epics/10034) we have to unmask the latest Ruby 3.0 package by adding


  =dev-lang/ruby-3.0.6-r3

to /etc/portage/package.unmask or /etc/portage/package.unmask/<file> and the ruby_targets_ruby30 USE flag of the bundler package by adding


  >=dev-ruby/bundler-2:2 -ruby_targets_ruby30

to /etc/portage/profile/package.use.mask (note the '-' here; its a kind of double negation).



GitLab now depends on =dev-ruby/rubygems-3.4* but since this version is still ~amd64 in the tree and normally requires Ruby 3.2 we have to add


  =dev-ruby/rubygems-3.4* ~amd64

to the accepted keywords and unmask the ruby_targets_ruby30 USE flag by adding


  =dev-ruby/rubygems-3.4* -ruby_targets_ruby30

to /etc/portage/profile/package.use.mask (note the '-' here; its a kind of double negation).