Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 912592 - app-emulation/vagrant-2.2.19-r2 ruby issue
Summary: app-emulation/vagrant-2.2.19-r2 ruby issue
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Guillaume Seren
URL:
Whiteboard:
Keywords:
Depends on: 867943
Blocks:
  Show dependency tree
 
Reported: 2023-08-19 14:43 UTC by Leonid Kopylov
Modified: 2023-08-27 22:09 UTC (History)
10 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Leonid Kopylov 2023-08-19 14:43:07 UTC
after emerge --sync:

ruby30 masked for package:

# emerge =app-emulation/vagrant-2.2.19-r2 -pvq


!!! Problem resolving dependencies for =app-emulation/vagrant-2.2.19-r2

!!! The ebuild selected to satisfy "=app-emulation/vagrant-2.2.19-r2" has unmet requirements.
- app-emulation/vagrant-2.2.19-r2::gentoo USE="-test" ABI_X86="(64)" RUBY_TARGETS="(-ruby30)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    ruby_targets_ruby30

  The above constraints are a subset of the following complete expression:
    any-of ( ruby_targets_ruby30 )
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-08-19 14:45:57 UTC
graaff or I are going to try handle this.
Comment 2 Jesse Adelman 2023-08-22 21:17:26 UTC
It's strange - I have literally 'RUBY_TARGETS="ruby30 ruby31"' in /etc/portage/make.conf, but in 'emerge --info' it says 'RUBY_TARGETS="ruby31"'. :( Makes me think there's something deeper wrong in the Ruby eclasses or other Ruby-related components of Portage? Thanks.

---

Portage 3.0.49 (python 3.10.12-final-0, default/linux/amd64/17.1/desktop, gcc-12, glibc-2.37-r3, 6.4.11-gentoo x86_64)
=================================================================
System uname: Linux-6.4.11-gentoo-x86_64-AMD_Ryzen_7_5700U_with_Radeon_Graphics-with-glibc2.37
KiB Mem:    40403068 total,  22819232 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Tue, 22 Aug 2023 20:46:37 +0000
Head commit of repository gentoo: 10b43cd4525f086fa43db6a2d47d3fdd24f234cd

Timestamp of repository gentoo-zh: Tue, 22 Aug 2023 18:16:35 +0000
Head commit of repository gentoo-zh: 97335cd3fea123172d23b8b35f54ee53486784fd

sh bash 5.1_p16-r6
ld GNU ld (Gentoo 2.39 p6) 2.39.0
distcc[29158] (dcc_mkdir) ERROR: mkdir '/root/.distcc/state' failed: No such file or directory [enabled]
app-misc/pax-utils:        1.3.5::gentoo
app-shells/bash:           5.1_p16-r6::gentoo
dev-lang/perl:             5.36.1-r3::gentoo
dev-lang/python:           3.10.12::gentoo, 3.11.4::gentoo
dev-lang/rust:             1.69.0-r1::gentoo
dev-util/cmake:            3.26.5-r2::gentoo
dev-util/meson:            1.1.1::gentoo
sys-apps/baselayout:       2.13-r1::gentoo
sys-apps/openrc:           0.47.1::gentoo
sys-apps/sandbox:          2.37::gentoo
sys-devel/autoconf:        2.13-r7::gentoo, 2.71-r6::gentoo
sys-devel/automake:        1.16.5-r1::gentoo
sys-devel/binutils:        2.39-r5::gentoo, 2.40-r5::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           15.0.7-r3::gentoo, 16.0.6::gentoo
sys-devel/gcc:             12.3.1_p20230526::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/lld:             15.0.7::gentoo, 16.0.6::gentoo
sys-devel/llvm:            15.0.7-r3::gentoo, 16.0.6::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.37-r3::gentoo
Repositories:

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0
    volatile: True

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/repo/sync/gentoo.git
    priority: 10
    volatile: True
    sync-git-verify-commit-signature: yes

gentoo-zh
    location: /var/db/repos/gentoo-zh
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo-zh.git
    masters: gentoo
    priority: 15
    volatile: False

nordvpn
    location: /var/lib/layman/nordvpn
    masters: gentoo
    priority: 50
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=znver2 -mtune=znver2 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=znver2 -mtune=znver2 -O2 -pipe"
DISTDIR="/dev/shm/distfiles"
EMERGE_DEFAULT_OPTS="--jobs 8 --keep-going --load-average 15"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live candy distcc distlocks ebuild-locks fail-clean fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
LINGUAS="en_US"
MAKEOPTS="-j8 -l15"
PKGDIR="/var/lib/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/dev/shm"
SHELL="/bin/bash"
USE="256-color X Xaw3d a52 aac aalib acl acpi ads aes aften agg aio alsa amd64 amr ao aot ap appindicator aptx asf asn aspell ass audio auth-dns autoipd autotype avcodec avformat avi avx background bash-completion berkdb blksha1 bluetooth bolddiag branding brotli browser browserplugin btree bzip2 cairo caps cdda cdparanoia cdr celt chardet chromium clang classic cleartype cli client colordiff conntrack context contrast cplugins cpufreq_bench cramfs crypt cryptopp css ctype cups curl custom-optimization cxx dbus dell development device-mapper dga dia dirac directfb distinct-l divx dm dmi dns dnssec drafts dri dri3 dtmf dts dv dvd dvdr dvdread eap-sim edd edit efax egl eigen elogind emoji enca encode epub escreen eselect ethereal eurehpia eurephia exif extensions externa-fuse extra extrafilters faac faad fading-colors fam fame fastcgi fastscroll fat faxonly fbcon fbcondecor fdt festival ffmpeg fftw filter filters firefox flac flash focused-urgency font-server font-styles fontconfig foomaticdb fortran fpm freetype frontendonly ftdi fts3 fuse garmin gc gd gdal gdbm gecko gedit gensplash geo gif gimp gimpprint glamor gles2 glew glib glitz gmedia gmp gnome-keyring go gpl gpm gps gpsd_user grammar graphics graphite graphviz gs gsf gsm gtk gtk2 gtk3 gtk4 gtkhtml gudev gui gutenprint h224 h281 h323 hangouts haptic hardenedphp harfbuzz hash highlight howl-compat hpcups http httpd hwdb iax icedtea7 iconv icu id id3tag ide idn ieee1394 ilbc imagemagick imap imlib infinality inkjar inotify inspector introspection ipc iptables ipv6 irc irda jack jadetex javascript jbig jbootstrap jfs jingle jit john joystick jp2 jpeg jpeg2k json jumbo-build keymap kmod kvm ladspa lame lapack laptop lash layers lcms lensfun libass libcaca libev libevent libgcrypt libgda libidn2 libkms libnl libnotify librsync-bundled libssh libtirpc libv4l2 libvirt libvirtd lid lightning live lm-sensors lm_sensors logrotate loop-aes lpsol lua lvm lxc lzo lzw-tiff mad magic maildir mapnik matroska mbrola mcal mdadm mdb mdnsresponder-compat menubar metapost methodjit mhash midi mime minizip mjpeg mmap mms mmx mmxext mng monitor monolithic motif mount mousewheel mozbranding mozdevelop mozilla mozsvg mp2 mp3 mp4 mp4live mpeg mpeg2 mplayer mpm-worker mpx mso mta mtp multilib mysqli mysqlnd mythtv nas natspec ncat ncurses net netlink network new-hpcups new-login nfsv41 nftables nls nocd notification nping nptl nptlonly nsplugin nss ntfs ntfsprogs ntp nut nvme nx odbc offensive ogg ogg123 oggvorbis old-daemons old-output omega openexr opengl openmp openrc openssl openstreetmap osdmenu osmesa ots overlay overlays p2p pae pam pam_timestamp pango parallel-compiler pcap pcf pcmcia pcntl pcre pcre16 pcre32 pda pdf pdfannotextractor pdfimport pixbuf plotutils plugin plugins plymouth pmu png pnm pnp policykit portaudio posix postproc postscript ppds prediction printsupport proprietary-codecs psf pulseaudio pvr pygments python q16 qemu qemu-fast qemu-ifup qml quesoglc quicktime radosgw raptor raw rdesktop-vrdp rdp readline real realtime reflection replytolist resolvconf rpc rsxs rtc rtmp rtsp rubberband rule_generator run-exes s3tc sasl savedconfig sbc scanner schroedinger script scripting scripts sdk sdl sdl-image sdl-sound sdl2 seccomp secure-delete sensord sensors session sha512 shared-glapi shm shmvideo shout silc simplexml sip sipim sixel skype slideshow slit slp smbclient smi smp sna sndfile soap sockets socks socks5 softmmu sound speech speex spell spice spl split-ucode split-usr sqlite sqlite3 srtp sse sse2 sse2check sse4_1 ssh ssl ssse3 staging stars startup-notification stats status stream stun sudo suidcheck svc svg swscale synaptics sysfs system-bootstrap system-ffmpeg system-icu system-libvpx system-llvm system-sqlite taglib tagsoup tcl tcpdns templates test-rust tex4ht themes theora thesaurus thin threads threadsafe tidy tiff timidity tk tkip tls tokenizer tokyocabinet toolame toolbar tracepath tremor truetype truetype-fonts tts twolame type1-fonts udev udisks uefi ulaw umfpack uml unicode unicode3 unlock-notify upcall upower urandom usb usbredir utils uvm uxa v4l v4l2 vaapi vala vamp vdpau verify-sig vf-dlopen vhost-net video vim vim-pager vim-syntax vim-with-x virt-network virtualbox visio vlm vnc vorbis vpx vte vulkan vxml watchdog wav wavpack webchannel webdav webdav-neon webengine webkit webm webstart widevine widgets wifi winbind wma wmf wmp wordperfect wps wxwidgets wxwindows x264 x265 xattr xcap xcb xchattext xcomposite xcsecurity xetex xext xforms xfs xft xine xinerama xkb xml xml2 xmlrpc xmp xorg xosd xpdf-headers xpm xrandr xscreensaver xterm-color xulrunner xv xvfb xvid yahoo yaml yubikey yv12 zeroconf zip zlib zrtp zstd zvbi" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="braindump flow karbon kexi krita sheets stage words" CAMERAS="*" COLLECTD_PLUGINS="apache apcups battery bind conntrack contextswitch cpu cpufreq csv curl curl_json curl_xml df disk dns email entropy ethstat exec filecount fscache hddtemp interface iptables irq java libvirt load logfile match_empty_counter match_hashed match_regex match_timediff match_value mbmon md memory multimeter mysql netlink network nfs notify_desktop notify_email ntpd numa openvpn ping processes protocols rrdcached rrdtool sensors serial snmp swap syslog table tail target_notification target_replace target_scale target_set tcpconns ted thermal unixsock uptime users uuid vmem wireless write_graphite write_http" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="synaptics evdev" KERNEL="linux" L10N="en en-GB en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" QEMU_SOFTMMU_TARGETS="x86_64 i386 arm" QEMU_USER_TARGETS="x86_64 i386 armeb arm" RUBY_TARGETS="ruby31" VIDEO_CARDS="amdgpu radeon radeonsi" VOICEMAIL_STORAGE="file" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 3 Jan C Peters 2023-08-22 21:30:34 UTC
Yep, I have the exact same issue as Jesse, and this in combination with vagrant being installed leads to the issue described in the first post. Which prevents me from doing any sort of emerge -auDU @world updates at the moment.
Comment 4 emdee_is 2023-08-22 23:55:43 UTC
app-emulation/vagrant
     Available versions:  (~)2.2.19-r2^t {test RUBY_TARGETS="ruby30"}

Has ruby30 been taken out of tree without supporting vagrant?

ruby30 requires openssl-1.1.1 so you would need to support slotted openssl-1 and openssl-3 coexisting to support ruby30 and ruby31...

If you are thinking of supporting only a new major release of vagrant without lots of testing is asking for trouble - their track record is terrible - been there.

Is there a vagrant 2.3.7 release that could be made to work with ruby30 and ruby31 (thanks tdr)? https://releases.hashicorp.com/vagrant/2.3.7/

The ruby30 dependency has been known for a while - sam and I chatted about it 2 months ago and it's explicit in the ebuild. Did gentoo go ahead and purge ruby30 despite it? Blocking everyone who has vagrant installed?

Besides the big issues that come with a new major vagrant version (often serious in the past), vagrant has a whole ecosystem of plugins that lag and have to be updated for ruby bumps, so you would want to keep a version that works with the old and new ruby versions until the plugins are migrated. Same with major vagrant bumps. Was none of this was planned for?
Comment 5 emdee_is 2023-08-23 00:12:44 UTC
tdr chatted that  3.0.6 is in testing, but not 2.3.7. Is someone planning on purging vagrant-2 as well? You should plan on having vagrant 2 and 3 in tree for a long while to test their possible breakage, and migrate the plugins.
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-08-23 06:48:18 UTC
(In reply to emdee_is from comment #4)
> app-emulation/vagrant
>      Available versions:  (~)2.2.19-r2^t {test RUBY_TARGETS="ruby30"}
> 
> Has ruby30 been taken out of tree without supporting vagrant?
> 
> ruby30 requires openssl-1.1.1 so you would need to support slotted openssl-1
> and openssl-3 coexisting to support ruby30 and ruby31...

Slotting OpenSSL isn't possible.

> 
> [...]
> 
> Besides the big issues that come with a new major vagrant version (often
> serious in the past), vagrant has a whole ecosystem of plugins that lag and
> have to be updated for ruby bumps, so you would want to keep a version that
> works with the old and new ruby versions until the plugins are migrated.
> Same with major vagrant bumps. Was none of this was planned for?

Someone has to actually do the work.

In this case, pretty much the whole thing has been blocked on the googleware bumps - see all the detail in bug 867943 and the bug *that* one depends on.

ruby30 isn't gone yet, just masked.
Comment 7 Jesse Adelman 2023-08-23 16:08:36 UTC
Thanks, but now what's my path for fixing a broken Portage? Do I have to remove a (I hope) a still-working Vagrant installation? :(
Comment 8 emdee_is 2023-08-23 16:54:51 UTC
    I understand that there is a lot of work to be done, and that the work is moving ahead slowly.

    But no one has answered my question: my question for the devs is: as a matter of policy, does Gentoo mask packages that have dependencies in-tree? 

    Ruby30 is masked and the current in-tree vagrant app-emulation/vagrant 2.2.19-r2 depends on it. Is that a mistake that violated Gentoo's existing policies, or should I expect the devs do this whenever it suits them? 

    In other words, where is the decision process that lead to ruby30 being masked when there was a dependency in-tree at the time. Am I wrong as a user trusting that this does not happen? 

    Sam could you answer this for me?

Everyone with vagrant installed like Jesse Leonid and I now have a
broken tree.
Comment 9 emdee_is 2023-08-23 16:56:39 UTC
Can someone mark the status as confirmed: it's easy to confirm by reading the first few lines of /usr/portage/app-emulation/vagrant/vagrant-2.2.19-r2.ebuild
Comment 10 emdee_is 2023-08-23 17:19:01 UTC
Jesse, Leonid, Jan - I couldn't get any meaningful help in #gentoo on this, but I'm guessing that unmasking ruby30 would help, and stop the removal of ruby30 dependencies in the meantime (dev-lang/ruby depends on a bunch of dev-ruby/*).

But I don't know the syntax if you have to unmask the RUBY_TARGETS=ruby30 in package.unmask. RUBY_TARGETS=ruby30... in make.conf isn't enough, and I don't think =dev-lang/ruby-3.0.6-r3 is enough either, though you could try. YMMV
Comment 11 Flávio Albuquerque Camilo 2023-08-23 17:45:42 UTC
ruby_targets_ruby30 is masked (on 2023-08-19) in /var/db/repos/gentoo/profiles/base/use.mask:

# Ruby 3.0 is not compatible with OpenSSL 3. Please upgrade to a newer
# Ruby version.
ruby_targets_ruby30

To unmask this, as of what I know, there is no official way, but you can achieve it reversing the unmask adding the following to /etc/portage/profile/use.mask (it's not use.unmask):
-ruby_targets_ruby30

dev-lang/ruby:3.0 is masked (also on 2023-08-19) in /var/db/repos/gentoo/profiles/package.mask:

# 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.
dev-lang/ruby:3.0

To unmask this, add dev-lang/ruby:3.0 to /etc/portage/package.unmask.
Comment 12 Flávio Albuquerque Camilo 2023-08-23 17:50:42 UTC
(In reply to Flávio Albuquerque Camilo from comment #11)
> To unmask this, as of what I know, there is no official way, but you can
> achieve it reversing the unmask adding the following to
> /etc/portage/profile/use.mask (it's not use.unmask):

s/"reversing the unmask"/"reversing the mask" :P
Comment 13 emdee_is 2023-08-23 18:03:16 UTC
Thanks Flavio; I would have never thought of a double negative in use.mask!
I knew adding dev-lang/ruby:3.0 to package.unmask would not be enough.

vagrant is not the only one: there are 3 other packages in-tree that require ruby30, so I would expect the same problem with these, and anything that depends on them.

Is not the easiest thing to do is to revert the mask until the in-tree packages are working with ruby31 - we've been dealing with openssl-1 and openssl-3 for a while? I trusted that that something in tree would not have its dependencies masked: clearly I was wrong. If the mask stays then Iguess the honest thing to do would be to mask vagrant (and the 3 others) from the tree as unsupported.

(Also, are ebuilds ever cleaned for cruft - I saw some USE_RUBY="ruby26... in there.)
Comment 14 Jesse Adelman 2023-08-23 19:33:26 UTC
Thank you(In reply to Flávio Albuquerque Camilo from comment #11)
> ruby_targets_ruby30 is masked (on 2023-08-19) in
> /var/db/repos/gentoo/profiles/base/use.mask:
> 
> # Ruby 3.0 is not compatible with OpenSSL 3. Please upgrade to a newer
> # Ruby version.
> ruby_targets_ruby30
> 
> To unmask this, as of what I know, there is no official way, but you can
> achieve it reversing the unmask adding the following to
> /etc/portage/profile/use.mask (it's not use.unmask):
> -ruby_targets_ruby30
> 
> dev-lang/ruby:3.0 is masked (also on 2023-08-19) in
> /var/db/repos/gentoo/profiles/package.mask:
> 
> # 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.
> dev-lang/ruby:3.0
> 
> To unmask this, add dev-lang/ruby:3.0 to /etc/portage/package.unmask.

Thank you, Flávio. This got Portage working again on the affected host. :)
Comment 15 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-08-24 18:33:23 UTC
(In reply to emdee_is from comment #8)
>     Ruby30 is masked and the current in-tree vagrant app-emulation/vagrant
> 2.2.19-r2 depends on it. Is that a mistake that violated Gentoo's existing
> policies, or should I expect the devs do this whenever it suits them? 
> 

The tone of this is unnecessarily antagonistic and I suggest avoiding it in future.

Yes, you misunderstood. Vagrant should probably be masked but there's nothing which says we have to keep packages indefinitely if they're not being updated to suit bigger constraints. See also e.g. Python 2.

>     In other words, where is the decision process that lead to ruby30 being
> masked when there was a dependency in-tree at the time. Am I wrong as a user
> trusting that this does not happen? 

The bug has been open for ages and nothing's happened, and OpenSSL 1.1.1x is EOL in a matter of days. OpenSSL is not something we can stomach having an EOL version on user systems for, even temporarily.

Further comments on this bug should be kept wrt fixing the actual issue.
Comment 16 Jan C Peters 2023-08-24 20:23:26 UTC
vagrant-2.2.19-r2 is ~amd64, ~arm64, which if I understand correctly means that it should not necessarily be considered stable and we are using it at our own risk. So I am aware of this risk, took it willingly, and now am suffering for it a little, but that is okay.

Granted, at first I was also surprised that adding ruby30 back to my RUBY_TARGETS in make.conf did not change anything (as I have apparently never needed to deal with this kind of masking before).

I am still hoping that this can be resolved, but I would understand if the maintainers' decision right now would be to completely mask vagrant.
Comment 17 Larry the Git Cow gentoo-dev 2023-08-27 16:59:02 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e419db21acd6e588b8d12b7f59e48aff873917fb

commit e419db21acd6e588b8d12b7f59e48aff873917fb
Author:     Hans de Graaff <graaff@gentoo.org>
AuthorDate: 2023-08-27 16:57:48 +0000
Commit:     Hans de Graaff <graaff@gentoo.org>
CommitDate: 2023-08-27 16:58:57 +0000

    app-emulation/vagrant: add 2.3.7
    
    Closes: https://bugs.gentoo.org/867943
    Closes: https://bugs.gentoo.org/912592
    Signed-off-by: Hans de Graaff <graaff@gentoo.org>

 app-emulation/vagrant/Manifest             |   1 +
 app-emulation/vagrant/files/vagrant.in     |   2 +-
 app-emulation/vagrant/vagrant-2.3.7.ebuild | 121 +++++++++++++++++++++++++++++
 3 files changed, 123 insertions(+), 1 deletion(-)
Comment 18 Hans de Graaff gentoo-dev Security 2023-08-27 17:01:20 UTC
A package like vagrant really needs a dedicated maintainer that uses the package and does regular maintenance on it. I've added a recent version of vagrant that should work with ruby31 but I have not verified that it works other than checking its command line help function.
Comment 19 viktor.polak 2023-08-27 22:09:08 UTC
Thank you. I have tried a `vagrant destroy` and `vagrant up` and it seems to be working fine. The AppImage versions from their website couldn't even start a VirtualBox VM.