Closed alexandrosomegas closed 1 month ago
Work around is to revert ruby-rexml upgrade from 3.2.6 to 3.3.2
sudo pacman -U /var/cache/pacman/pkg/ruby-rexml-3.2.6-2-any.pkg.tar.zst
and then freeze upgrade in /etc/pacman.conf
IgnorePkg = ruby-rexml
If you're also using Virtualbox as backend, you also need workaround proposed here
Thank you!
An more easy option is to use 'downgrade' for downgrade:
sudo su work/stats [develop] » downgrade ruby-rexml loading packages... warning: downgrading package ruby-rexml (3.3.2-1 => 3.2.6-2) resolving dependencies... looking for conflicting packages...
Packages (1) ruby-rexml-3.2.6-2
Total Installed Size: 0.43 MiB Net Upgrade Size: -0.57 MiB
:: Proceed with installation? [Y/n] y (1/1) checking keys in keyring [#############################] 100% (1/1) checking package integrity [#############################] 100% (1/1) loading package files [#############################] 100% (1/1) checking for file conflicts [#############################] 100% (1/1) checking available disk space [#############################] 100% :: Processing package changes... (1/1) downgrading ruby-rexml [#############################] 100% :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... add ruby-rexml to IgnorePkg? [y/N] y
For Archlinux and similar, you can use the previous version of ruby-rexml
package from here:
https://archive.archlinux.org/packages/r/ruby-rexml/
For example:
wget https://archive.archlinux.org/packages/r/ruby-rexml/ruby-rexml-3.2.6-2-any.pkg.tar.zst
sudo pacman -U ruby-rexml-3.2.6-2-any.pkg.tar.zst
Just info for Arch linux + yay users. Damn, today viertualbox went version up to unsupported version 7.1. (it could be expected since today is Friday 13th). downgrade to v 7.0.20-1
sudo su downgrade virtualbox-host-dkms and downgrade virtualbox
It worked for me. Problem could be that we don't know long we must keep virtualbox, virtualbox-host-dkms, ruby-rexml in IgnorePkg (probably till new version of vagrant will fix those conflicts?
@alexandrosomegas - did you run full system update before having this error? i did and now i have similar problem, but seems like downgrading virtualbox and dkms didn't work, now i've got error saying that the kernel module is not loaded. What is your current kernel version?
Edit:
it works, steps to reproduce:
downgrade virtualbox
, downgrade virtualbox-host-dkms
, run pacman -S linux linux-headers
, reboot
An more easy option is to use 'downgrade' for downgrade:
sudo su work/stats [develop] » downgrade ruby-rexml loading packages... warning: downgrading package ruby-rexml (3.3.2-1 => 3.2.6-2) resolving dependencies... looking for conflicting packages...
Packages (1) ruby-rexml-3.2.6-2
Total Installed Size: 0.43 MiB Net Upgrade Size: -0.57 MiB
:: Proceed with installation? [Y/n] y (1/1) checking keys in keyring [#############################] 100% (1/1) checking package integrity [#############################] 100% (1/1) loading package files [#############################] 100% (1/1) checking for file conflicts [#############################] 100% (1/1) checking available disk space [#############################] 100% :: Processing package changes... (1/1) downgrading ruby-rexml [#############################] 100% :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... add ruby-rexml to IgnorePkg? [y/N] y
well I am not ruby user. is there any guide for using the downgrade
tool?
Just info for Arch linux + yay users. Damn, today viertualbox went version up to unsupported version 7.1. (it could be expected since today is Friday 13th). downgrade to v 7.0.20-1
sudo su downgrade virtualbox-host-dkms and downgrade virtualbox
It worked for me. Problem could be that we don't know long we must keep virtualbox, virtualbox-host-dkms, ruby-rexml in IgnorePkg (probably till new version of vagrant will fix those conflicts?
True, downgrade these 3 works for me for this error. But vagrant then tells:
❯ vagrant reload
==> default: Checking if box 'debian/bookworm64' version '12.20240503.1' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: bridged
default: Adapter 3: bridged
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "a92789f7-1744-4355-821a-92560140a0dc", "--type", "headless"]
Stderr: VBoxManage: error: The virtual machine 'devops_default_1726238446231_23652' has terminated unexpectedly during startup with exit code 1 (0x1)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component MachineWrap, interface IMachine
After google, reinstall virtualbox
virtualbox-host-dkms
virtualbox-ext-vnc
from pacman cache version 7.0.20-1
doesnt help.
Edit: It works just as @mateuszR84 said. after reinstall my in-using linux
linux-header
, to fire DKMS rebuild I guess, and REBOOT.
@mateuszR84
@alexandrosomegas - did you run full system update before having this error? i did and now i have similar problem, but seems like downgrading virtualbox and dkms didn't work, now i've got error saying that the kernel module is not loaded. What is your current kernel version?
Edit: it works, steps to reproduce: downgrade
virtualbox
, downgradevirtualbox-host-dkms
, runpacman -S linux linux-headers
, reboot
Yes, I did full system upgrade (Arch linux). As I wrote after 3 downgrade (and pinned them to ignore offered by downgrade) I mentioned, Vagrant up/ssh worked fine. (About install Downgrade Arch users can look here: https://aur.archlinux.org/packages/downgrade (it can be installed using simple command: yay -S downgrade) But question is when we can remove those 3 pkg from ignore... I hope with new version of vagrant.
vagrant reload ==> statistics: Checking if box 'laravel/homestead' version '14.0.2' is up to date... ==> statistics: Clearing any previously set forwarded ports... ==> statistics: Clearing any previously set network interfaces... ==> statistics: Preparing network interfaces based on configuration... statistics: Adapter 1: nat statistics: Adapter 2: hostonly ==> statistics: Forwarding ports... statistics: 80 (guest) => 8000 (host) (adapter 1) statistics: 443 (guest) => 44300 (host) (adapter 1) statistics: 8081 (guest) => 8081 (host) (adapter 1) statistics: 8082 (guest) => 8082 (host) (adapter 1) statistics: 8083 (guest) => 8083 (host) (adapter 1) statistics: 8091 (guest) => 8091 (host) (adapter 1) statistics: 8888 (guest) => 8888 (host) (adapter 1) statistics: 2181 (guest) => 2183 (host) (adapter 1) statistics: 2888 (guest) => 2888 (host) (adapter 1) statistics: 3888 (guest) => 3888 (host) (adapter 1) statistics: 22 (guest) => 2222 (host) (adapter 1) ==> statistics: Running 'pre-boot' VM customizations... ==> statistics: Booting VM... ==> statistics: Waiting for machine to boot. This may take a few minutes... statistics: SSH address: 127.0.0.1:2222 statistics: SSH username: vagrant statistics: SSH auth method: private key statistics: Warning: Connection reset. Retrying... statistics: Warning: Remote connection disconnect. Retrying... statistics: Warning: Connection reset. Retrying... statistics: Warning: Remote connection disconnect. Retrying... ==> statistics: Machine booted and ready! ==> statistics: Checking for guest additions in VM... ==> statistics: Setting hostname... ==> statistics: Configuring and enabling network interfaces... ==> statistics: Mounting shared folders... statistics: /vagrant => /home/work/dating-stats statistics: /home/vagrant/dating-statistics => /home/work/dating-stats ==> statistics: Detected mount owner ID within mount options. (uid: 1000 guestpath: /home/vagrant/dating-statistics) ==> statistics: Detected mount group ID within mount options. (gid: 1000 guestpath: /home/vagrant/dating-statistics) ==> statistics: Machine already provisioned. Run
vagrant provision
or use the--provision
==> statistics: flag to force provisioning. Provisioners marked to run always will still run.
than vagrant ssh, and all worked fine for me.
@leaveye Here is Downgrade: https://aur.archlinux.org/packages/downgrade
An more easy option is to use 'downgrade' for downgrade: sudo su work/stats [develop] » downgrade ruby-rexml loading packages... warning: downgrading package ruby-rexml (3.3.2-1 => 3.2.6-2) resolving dependencies... looking for conflicting packages... Packages (1) ruby-rexml-3.2.6-2 Total Installed Size: 0.43 MiB Net Upgrade Size: -0.57 MiB :: Proceed with installation? [Y/n] y (1/1) checking keys in keyring [#############################] 100% (1/1) checking package integrity [#############################] 100% (1/1) loading package files [#############################] 100% (1/1) checking for file conflicts [#############################] 100% (1/1) checking available disk space [#############################] 100% :: Processing package changes... (1/1) downgrading ruby-rexml [#############################] 100% :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... add ruby-rexml to IgnorePkg? [y/N] y
well I am not ruby user. is there any guide for using the
downgrade
tool?
I understand the workaround currently is to downgrade a Ruby dep and VirtualBox, but is there a plan properly fix this?
I understand the workaround currently is to downgrade a Ruby dep and VirtualBox, but is there a plan properly fix this?
If we are still speaking about archlinux, the Vagrant PKGBUILD embeds its own gem dependencies in /opt/vagrant/embedded/gems/
, so rebuilding the PKGBUILD will produce a new package with rexml 3.2 included.
But then you will run into the same problem with the vagrant-cloud gem which also depends on rexml ~>3.2.0. There's an open bug here: https://github.com/hashicorp/vagrant_cloud/pull/87
Annoying this approach seems to fail in arch now - when building the module:
CC [M] /var/lib/dkms/vboxhost/7.0.8_OSE/build/vboxdrv/combined-agnostic2.o
/var/lib/dkms/vboxhost/7.0.8_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.c: In function ‘vboxNetFltLinuxSkBufToSG’:
/var/lib/dkms/vboxhost/7.0.8_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.c:928:36: error: ‘skb_frag_t’ {aka ‘struct skb_frag’} has no member named ‘bv_len’
928 | pSG->aSegs[iSeg].cb = pFrag->bv_len;
| ^~
/var/lib/dkms/vboxhost/7.0.8_OSE/build/vboxnetflt/linux/VBoxNetFlt-linux.c:929:66: error: ‘skb_frag_t’ {aka ‘struct skb_frag’} has no member named ‘bv_offset’; did you mean ‘offset’?
929 | pSG->aSegs[iSeg].pv = VBOX_SKB_KMAP_FRAG(pFrag) + pFrag->bv_offset;
I guess this means downgrading the kernel as well...
Edit - this change seems to have happened in linux@6.9 - currently on 6.11 - how is it compiling for anyone with recent headers?
Edit 2 - think this was my error. I looked at https://archive.archlinux.org/packages/v/virtualbox-host-dkms/ and saw the bottom version as being .0.8, when there was a .0.20 hiding above. Using 20 should work hopefully!
Debug output
vagrant reload /usr/lib/ruby/3.2.0/rubygems/specification.rb:2303:in'
from /opt/vagrant/embedded/gems/gems/vagrant-2.4.1/bin/vagrant:94:in '
from /opt/vagrant/embedded/gems/gems/vagrant-2.4.1/bin/vagrant:105:in `'
raise_if_conflicts': Unable to activate vagrant_cloud-3.1.1, because rexml-3.3.2 conflicts with rexml (~> 3.2.5) (Gem::ConflictError) from /usr/lib/ruby/3.2.0/rubygems/specification.rb:1432:in
activate' from /usr/lib/ruby/3.2.0/rubygems/core_ext/kernel_gem.rb:63:inblock in gem' from /usr/lib/ruby/3.2.0/rubygems/core_ext/kernel_gem.rb:63:in
synchronize' from /usr/lib/ruby/3.2.0/rubygems/core_ext/kernel_gem.rb:63:ingem' from /opt/vagrant/embedded/gems/gems/vagrant-2.4.1/bin/vagrant:95:in
block (2 levels) ineach' from /opt/vagrant/embedded/gems/gems/vagrant-2.4.1/bin/vagrant:94:in
block inExpected behavior
Actual behavior
Reproduction information
This happened after today full system update on Arch Linux (yay -Syu)
resolving dependencies... looking for conflicting packages...
Packages (9) gnome-nibbles-4.1.0-1 iwd-2.22-1 php-mongodb-1.19.4-1 ruby-3.2.5-2 ruby-bundled-gems-3.2.5-2 ruby-default-gems-3.2.5-2 ruby-rexml-3.3.2-1 ruby-stdlib-3.2.5-2 wayland-1.23.1-1
Total Download Size: 6.02 MiB Total Installed Size: 24.42 MiB Net Upgrade Size: 0.63 MiB
:: Proceed with installation? [Y/n] :: Retrieving packages... ruby-3.2.5-2-x86_64 4.0 MiB 17.4 MiB/s 00:00 [######################] 100% php-mongodb-1.19... 756.1 KiB 4.83 MiB/s 00:00 [######################] 100% iwd-2.22-1-x86_64 581.6 KiB 4.98 MiB/s 00:00 [######################] 100% gnome-nibbles-4.... 385.2 KiB 2.89 MiB/s 00:00 [######################] 100% ruby-rexml-3.3.2... 197.9 KiB 3.86 MiB/s 00:00 [######################] 100% wayland-1.23.1-1... 140.4 KiB 2.28 MiB/s 00:00 [######################] 100% ruby-bundled-gem... 4.6 KiB 97.8 KiB/s 00:00 [######################] 100% ruby-default-gem... 4.5 KiB 96.6 KiB/s 00:00 [######################] 100% ruby-stdlib-3.2.... 4.5 KiB 96.2 KiB/s 00:00 [######################] 100% Total (9/9) 6.0 MiB 4.29 MiB/s 00:01 [######################] 100% (9/9) checking keys in keyring [######################] 100% (9/9) checking package integrity [######################] 100% (9/9) loading package files [######################] 100% (9/9) checking for file conflicts [######################] 100% (9/9) checking available disk space [######################] 100% :: Processing package changes... (1/9) upgrading wayland [######################] 100% (2/9) upgrading gnome-nibbles [######################] 100% (3/9) upgrading iwd [######################] 100% (4/9) upgrading php-mongodb [######################] 100% (5/9) upgrading ruby [######################] 100% (6/9) upgrading ruby-rexml [######################] 100% (7/9) upgrading ruby-bundled-gems [######################] 100% (8/9) upgrading ruby-default-gems [######################] 100% (9/9) upgrading ruby-stdlib [######################] 100% :: Running post-transaction hooks... (1/6) Reloading system manager configuration... (2/6) Arming ConditionNeedsUpdate... (3/6) Reloading system bus configuration... (4/6) Compiling GSettings XML schema files... (5/6) Updating icon theme caches... (6/6) Updating the desktop file MIME type cache...
...
:: 10 packages to upgrade/install. 10 extra/gnome-nibbles 4.0.4-1.1 -> 4.1.0-1 9 extra/iwd 2.21-1 -> 2.22-1 8 extra/php-mongodb 1.19.3-1 -> 1.19.4-1 7 extra/ruby 3.2.5-1 -> 3.2.5-2 6 extra/ruby-bundled-gems 3.2.5-1 -> 3.2.5-2 5 extra/ruby-default-gems 3.2.5-1 -> 3.2.5-2 4 extra/ruby-rexml 3.2.6-2 -> 3.3.2-1 3 extra/ruby-stdlib 3.2.5-1 -> 3.2.5-2 2 extra/wayland 1.23.0-1 -> 1.23.1-1 1 aur/google-chrome 128.0.6613.119-1 -> 128.0.6613.137-1
Vagrant version
vagrant -v Vagrant 2.4.1
ruby -v ruby 3.2.5 (2024-07-26 revision 31d0f1a2e7) [x86_64-linux]
gem list
LOCAL GEMS
abbrev (default: 0.1.1) base64 (default: 0.1.1) benchmark (default: 0.2.1) bigdecimal (default: 3.1.3) bundler (default: 2.5.11) cgi (default: 0.3.6) csv (default: 3.2.6) date (default: 3.3.3) debug (1.7.1) delegate (default: 0.3.0) did_you_mean (default: 1.6.3) digest (default: 3.1.1) drb (default: 2.1.1) english (default: 0.7.2) erb (4.0.4) error_highlight (default: 0.5.1) etc (default: 1.4.2) fcntl (default: 1.0.2) fiddle (default: 1.1.1) fileutils (default: 1.7.0) find (default: 0.1.1) forwardable (default: 1.3.3) getoptlong (default: 0.2.0) io-console (default: 0.6.0) io-nonblock (default: 0.2.0) io-wait (default: 0.3.0) ipaddr (default: 1.2.5) irb (default: 1.6.2) json (default: 2.6.3) logger (default: 1.5.3) matrix (0.4.2) minitest (5.22.3) mutex_m (default: 0.1.2) net-ftp (0.3.5) net-http (default: 0.4.1) net-imap (0.4.12) net-pop (0.1.2) net-protocol (default: 0.2.1) net-smtp (0.5.0) nkf (default: 0.1.2) observer (default: 0.1.1) open-uri (default: 0.3.0) open3 (default: 0.1.2) openssl (default: 3.1.0) optparse (default: 0.3.1) ostruct (default: 0.5.5) pathname (default: 0.2.1) power_assert (2.0.3) pp (default: 0.4.0) prettyprint (default: 0.1.1) prime (0.1.2) pstore (default: 0.1.2) psych (default: 5.0.1) racc (default: 1.6.2) rake (13.0.6) rbs (3.4.4) rdoc (default: 6.5.1.1) readline (default: 0.0.3) readline-ext (default: 0.1.5) reline (default: 0.3.2) resolv (default: 0.2.2) resolv-replace (default: 0.1.1) rexml (3.3.2) rinda (default: 0.1.1) rss (0.3.0) ruby2_keywords (default: 0.0.5) securerandom (default: 0.2.2) set (default: 1.0.3) shellwords (default: 0.1.0) singleton (default: 0.1.1) stringio (default: 3.0.4) strscan (default: 3.0.5) syntax_suggest (default: 1.1.0) syslog (default: 0.1.1) tempfile (default: 0.1.3) test-unit (3.6.2) time (default: 0.2.2) timeout (default: 0.3.1) tmpdir (default: 0.1.3) tsort (default: 0.1.1) typeprof (0.21.8) un (default: 0.2.1) uri (default: 0.12.2) weakref (default: 0.1.2) yaml (default: 0.2.1) zlib (default: 3.0.0)
virtualbox-7.0.20-1
Host operating system
Guest operating system
Steps to reproduce
vagrant reload or vagrant reload