Sure. But sudo dnf upgrade
should, since the packages got downloaded and moved to dom0.
Ah, it fails due to /var/lib/qubes/updates/repodata
is missing and being removed on each qubes-dom0-update
run.
sudo dnf upgrade
Qubes OS Repository for Dom0 0.0 B/s | 0 B 00:00
Errors during downloading metadata for repository 'qubes-dom0-cached':
- Curl error (37): Couldn't read a file:// file for file:///var/lib/qubes/updates/repodata/repomd.xml [Couldn't open file /var/lib/qubes/updates/repodata/repomd.xml]
Error: Failed to download metadata for repo 'qubes-dom0-cached': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Ignoring repositories: qubes-dom0-cached
Dependencies resolved.
Nothing to do.
Complete!
Please post the output of cat /etc/yum.repos.d/qubes-dom0.repo
. There seems to be some bad repo source.
[qubes-dom0-current]
name = Qubes Host Repository (updates)
#baseurl = https://yum.qubes-os.org/r$releasever/current/host/fc37
#baseurl = http://yum.qubesosfasa4zl44o4tws22di6kepyzfeqv3tg4e3ztknltfxqrymdad.onion/r$releasever/current/host/fc37
metalink = https://yum.qubes-os.org/r$releasever/current/host/fc37/repodata/repomd.xml.metalink
skip_if_unavailable=False
enabled = 1
metadata_expire = 6h
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-qubes-$releasever-primary
[qubes-dom0-current-testing]
name = Qubes Host Repository (updates-testing)
#baseurl = https://yum.qubes-os.org/r$releasever/current-testing/host/fc37
#baseurl = http://yum.qubesosfasa4zl44o4tws22di6kepyzfeqv3tg4e3ztknltfxqrymdad.onion/r$releasever/current-testing/host/fc37
metalink = https://yum.qubes-os.org/r$releasever/current-testing/host/fc37/repodata/repomd.xml.metalink
skip_if_unavailable=False
enabled = 0
metadata_expire = 6h
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-qubes-$releasever-primary
[qubes-dom0-security-testing]
name = Qubes Host Repository (security-testing)
#baseurl = https://yum.qubes-os.org/r$releasever/security-testing/host/fc37
#baseurl = http://yum.qubesosfasa4zl44o4tws22di6kepyzfeqv3tg4e3ztknltfxqrymdad.onion/r$releasever/security-testing/host/fc37
metalink = https://yum.qubes-os.org/r$releasever/security-testing/host/fc37/repodata/repomd.xml.metalink
skip_if_unavailable=False
enabled = 0
metadata_expire = 6h
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-qubes-$releasever-primary
[qubes-dom0-unstable]
name = Qubes Host Repository (unstable)
#baseurl = https://yum.qubes-os.org/r$releasever/unstable/host/fc37
#baseurl = http://yum.qubesosfasa4zl44o4tws22di6kepyzfeqv3tg4e3ztknltfxqrymdad.onion/r$releasever/unstable/host/fc37
metalink = https://yum.qubes-os.org/r$releasever/unstable/host/fc37/repodata/repomd.xml.metalink
skip_if_unavailable=False
enabled = 0
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-qubes-$releasever-unstable
Try to hardcode the version string into the metadata source url āmetalinkā in line 4; change from
metalink = https://yum.qubes-os.org/r$releasever/current/host/fc37/repodata/repomd.xml.metalink
to
metalink = https://yum.qubes-os.org/r4.2/current/host/fc37/repodata/repomd.xml.metalink
Just temporarily ā¦ for sure.
That did not seem to make any difference when updating.
OK. Another try ā¦ please.
sudo qubesctl --show-output state.sls update.qubes-dom0
It seems like this hangs, after a while I cancelled with ctrl-C but it does not output anything.
Are you using a (more or less) standard system, or have you changed anything fundamental, such as changing sys-*
templates, customizing dom0
etc.?
It seems to me that your system is somewhat damaged. Essential scripts do not work (salt state), there is no output. Some caches donāt get filled/catalogs donāt get downloaded etc. I donāt know why /usr/lib/xen
is also not available (/var/log/dnf.rpm.log
).
If I were you, I wouldnāt trust this base system and back up my qubes and custom scripts in dom0
and reinstall. I suspect it will take less time than anything weāve invested so far.
A last try, just to evaluate some more, in dom0
terminal, please.
dnf history list
When itās hanged, check process list in the updatevm (sys-firewall) - simply run ps auxfw
, and find what processes as below qubes-download-dom0-updates.sh
script. If there is qrexec-client-vm
, then do the same in dom0 and here check for child processes of qubes-receive-updates.sh
(or qubes.ReceiveUpdates
). Check also /var/log/qubes/qrexec.sys-firewall.log
for errors.