Ohai, seems Vagrant Cloud changed things and the Vagrant in Fedora (2.3.4-6) can't download boxes anymore: Bringing machine 'pipe-up-foreman-nightly-ubuntu2204' up with 'libvirt' provider... Bringing machine 'pipe-up-foreman-smoker-nightly-ubuntu2204' up with 'libvirt' provider... ==> pipe-up-foreman-nightly-ubuntu2204: Libvirt Provider: volume_cache is deprecated. Use disk_driver :cache => 'unsafe' instead. ==> pipe-up-foreman-nightly-ubuntu2204: Box 'generic/ubuntu2204' could not be found. Attempting to find and install... pipe-up-foreman-nightly-ubuntu2204: Box Provider: libvirt pipe-up-foreman-nightly-ubuntu2204: Box Version: >= 0 ==> pipe-up-foreman-nightly-ubuntu2204: Box file was not detected as metadata. Adding it directly... ==> pipe-up-foreman-nightly-ubuntu2204: Adding box 'generic/ubuntu2204' (v0) for provider: libvirt pipe-up-foreman-nightly-ubuntu2204: Downloading: https://vagrantcloud.com/generic/ubuntu2204 The box failed to unpackage properly. Please verify that the box file you're trying to add is not corrupted and that enough disk space is available and then try again. The output from attempting to unpackage (if any): bsdtar: Error opening archive: Unrecognized archive format The problem is that https://vagrantcloud.com/generic/ubuntu2204 downloads a webpage now, and neither the box nor the box metadata. A workaround seems to be to set VAGRANT_SERVER_URL=https://vagrantcloud.com/api/v2/vagrant environment variable (or edit lib/vagrant/shared_helpers.rb) Reproducible: Always Steps to Reproduce: 1. vagrant init generic/ubuntu2204 (or any other box you don't yet have locally) 2. vagrant up Actual Results: The box failed to unpackage properly. Expected Results: Box is downloaded correctly and used.
I've been trying to get some details around this issue and ended up discussing it on the linked GitHub issue. It seems like we need to have an updated vagrant version >= 2.4.1(or 2.4.0). This is currently affecting our CI runs badly since last few days. @vondruch can you please do the needful?
> It seems like we need to have an updated vagrant version >= 2.4.1(or 2.4.0). If we *need* vagrant >= 2.4.0, I am sorry, but we cannot package it as that version is under the BUSL 1.1 license that is disallowed in Fedora. Beginning with https://github.com/hashicorp/vagrant/commit/731e9cb6c48df71d8c3f8d2b929dd35875250d2d which predates 2.4.0 release it seems https://github.com/hashicorp/vagrant/commit/5a2b888c371bd0c8dcae3abe1403e89020c6d6ca . Best we can do is (while not looking at source code), change it ourselves with the workaround, hoping it will be enough. (Not a lawyer...) We can start even just thinking about 2.4.0 in the year 2027 earliest if I understand their BUSL correctly. If the workaround will not be enough and there will not be a workaround that does not come from hashicorp repos (IOW not encumbered by the BUSL license), then this will be the last straw to break the camel's back. Other workaround is not using their cloud and instead building custom boxes on own infra that will be in the correct format for vagrant in Fedora (vagrant version < 2.4).
Maybe the license will change back sometime in the future (wishful thinking). A workaround for now is to just specify the box_url and checksum in the Vagrantfile. Here is an example: ``` Vagrant.configure(2) do |config| config.ssh.insert_key = 'true' config.vm.provider :libvirt do |domain| domain.memory = 4096 domain.cpus = 4 end host = 'vanilla-f41' box = 'fedora-41-cloud-base' box_url = "https://dl.fedoraproject.org/pub/fedora/linux/releases/41/Cloud/x86_64/images/Fedora-Cloud-Base-Vagrant-libvirt-41-1.4.x86_64.vagrant.libvirt.box" box_download_checksum = "6a7776e37514ae2b7986cb2d36c2ce9ed061d99f4bb2da7cfd8b13b163569189" box_download_checksum_type = "sha256" config.vm.define host do | tmp | tmp.vm.hostname = host tmp.vm.box = box tmp.vm.box_url = box_url tmp.vm.box_download_checksum = box_download_checksum tmp.vm.box_download_checksum_type = box_download_checksum_type end end ```
ahh. I missed in the original description: > A workaround seems to be to set VAGRANT_SERVER_URL=https://vagrantcloud.com/api/v2/vagrant environment variable (or edit lib/vagrant/shared_helpers.rb) and that does seem to work. Maybe we could just patch our RPM to either set the env var or update the affected code?
FEDORA-2025-ccbfae3954 (vagrant-2.3.4-7.fc42) has been submitted as an update to Fedora 42. https://bodhi.fedoraproject.org/updates/FEDORA-2025-ccbfae3954
FEDORA-2025-ccbfae3954 (vagrant-2.3.4-7.fc42) has been pushed to the Fedora 42 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2025-2745f56ebe (vagrant-2.3.4-7.fc41) has been submitted as an update to Fedora 41. https://bodhi.fedoraproject.org/updates/FEDORA-2025-2745f56ebe
FEDORA-2025-2745f56ebe has been pushed to the Fedora 41 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-2745f56ebe` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-2745f56ebe See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2025-2745f56ebe (vagrant-2.3.4-7.fc41) has been pushed to the Fedora 41 stable repository. If problem still persists, please make note of it in this bug report.