qubist
June 27, 2024, 4:32pm
2
Why can’t we just modify dnf to suit Qubes, or create a drop-in replacement/modification?
Perhaps because dom0 has no network access and needs a special way to get packages.
I don’t need audio in dom0, but qubes-audio-daemon and qubes-audio-dom0 depend on it, and qubes-gui-dom0 depend on those. I get the audio, but why gui?
Dom0 is the default guivm.
The problem is that there are packages that provide things that should be included elsewhere, packages that Qubes-specific packages shouldn’t depend on, and dnf/qubes-dom0-update are difficult to work with. I’m assuming there is probably a reasoning behind these choices or simply that no one has thought about it; either way, I’m not rocking the boat and just want to understand what’s happening here.
opened 10:59AM - 15 Jan 24 UTC
T: bug
P: default
needs diagnosis
C: dist upgrade
affects-4.1
### Qubes OS release
4.1.2 during upgrade to 4.2.0
### Brief summary
…
Upgrading from 4.1.2 to 4.2.0 installs unnecessary weak dependencies in dom0.
### Steps to reproduce
Follow this guide:
https://qubes-os.org/doc/upgrade/4.2/
### Expected behavior
Weak dependencies and other forms of recommended-but-not-strictly-necessary software should not be installed in dom0.
### Actual behavior
During the upgrade these get installed:
```
Installing weak dependencies:
adobe-source-code-pro-fonts noarch 2.042.1.062.1.026-2.fc37 qubes-dom0-cached 802 k
cpp x86_64 12.3.1-1.fc37 qubes-dom0-cached 11 M
deltarpm x86_64 3.6.3-4.fc37 qubes-dom0-cached 85 k
exiv2 x86_64 0.27.6-4.fc37 qubes-dom0-cached 974 k
flexiblas-openblas-threads x86_64 3.3.1-5.fc37 qubes-dom0-cached 13 k
gawk-all-langpacks x86_64 5.1.1-4.fc37 qubes-dom0-cached 229 k
glibc-gconv-extra x86_64 2.36-18.fc37 qubes-dom0-cached 1.6 M
gnupg2-smime x86_64 2.3.8-1.fc37 qubes-dom0-cached 245 k
grubby x86_64 8.40-66.fc37 qubes-dom0-cached 30 k
gstreamer1-plugins-good x86_64 1.20.5-1.fc37 qubes-dom0-cached 2.1 M
gstreamer1-plugins-good-qt x86_64 1.20.5-1.fc37 qubes-dom0-cached 63 k
hunspell-en noarch 0.20140811.1-23.fc37 qubes-dom0-cached 177 k
iio-sensor-proxy x86_64 3.4-2.fc37 qubes-dom0-cached 60 k
ipxe-roms-qemu noarch 20220210-2.git64113751.fc37 qubes-dom0-cached 1.5 M
jxl-pixbuf-loader x86_64 1:0.7.0-5.fc37 qubes-dom0-cached 53 k
libcanberra-gtk2 x86_64 0.30-29.fc37 qubes-dom0-cached 22 k
libfido2 x86_64 1.11.0-3.fc37 qubes-dom0-cached 93 k
libproxy-duktape x86_64 0.4.18-3.fc37 qubes-dom0-cached 14 k
libxcrypt-compat x86_64 4.4.36-1.fc37 qubes-dom0-cached 87 k
memstrack x86_64 0.2.4-3.fc37 qubes-dom0-cached 46 k
mesa-va-drivers x86_64 23.0.3-1.fc37 qubes-dom0-cached 3.4 M
mesa-vulkan-drivers x86_64 23.0.3-1.fc37 qubes-dom0-cached 9.1 M
mkpasswd x86_64 5.5.18-1.fc37 qubes-dom0-cached 22 k
nano-default-editor noarch 6.4-1.fc37 qubes-dom0-cached 6.5 k
ntfs-3g-system-compression x86_64 1.0-10.fc37 qubes-dom0-cached 25 k
openssl-pkcs11 x86_64 0.4.12-2.fc37 qubes-dom0-cached 70 k
pcsc-lite-ccid x86_64 1.5.0-2.fc37 qubes-dom0-cached 315 k
perl-IO-Socket-SSL noarch 2.075-1.fc37 qubes-dom0-cached 214 k
perl-Mozilla-CA noarch 20211001-4.fc37 qubes-dom0-cached 8.7 k
perl-NDBM_File x86_64 1.15-494.fc37 qubes-dom0-cached 20 k
pinentry x86_64 1.2.1-1.fc37 qubes-dom0-cached 99 k
pipewire x86_64 0.3.84-1.fc37 qubes-dom0-cached 103 k
pipewire-alsa x86_64 0.3.84-1.fc37 qubes-dom0-cached 60 k
pipewire-jack-audio-connection-kit x86_64 0.3.84-1.fc37 qubes-dom0-cached 11 k
python-systemd-doc x86_64 235-1.fc37 qubes-dom0-cached 156 k
python-unversioned-command noarch 3.11.6-1.fc37 qubes-dom0-cached 7.5 k
python3-unbound x86_64 1.18.0-1.fc37 qubes-dom0-cached 106 k
rpm-plugin-systemd-inhibit x86_64 4.18.2-1.fc37 qubes-dom0-cached 13 k
rsyslog-logrotate x86_64 8.2204.0-3.fc37 qubes-dom0-cached 6.5 k
systemd-networkd x86_64 251.19-1.fc37 qubes-dom0-cached 599 k
tpm2-tools x86_64 5.4-1.fc37 qubes-dom0-cached 766 k
tracker-miners x86_64 3.4.6-1.fc37 qubes-dom0-cached 913 k
unbound-anchor x86_64 1.18.0-1.fc37 qubes-dom0-cached 31 k
xdg-desktop-portal-gtk x86_64 1.14.1-1.fc37 qubes-dom0-cached 138 k
xorg-x11-fonts-misc noarch 7.5-34.fc37 qubes-dom0-cached 5.2 M
```
[Related](https://github.com/QubesOS/qubes-issues/issues/8658#issuecomment-1889911419).
Hi,
It seems dom0 is not as optimal (minimal) as it could be.
Here is an example:
root@dom0:~ # dnf list --installed *firmware* | sed -r 's/ {2,}.*//g'
Installed Packages
alsa-sof-firmware.noarch
amd-gpu-firmware.noarch
intel-gpu-firmware.noarch
linux-firmware.noarch
linux-firmware-whence.noarch
nvidia-gpu-firmware.noarch
I have no NVIDIA or AMD hardware, yet this firmware (which IIUC is certainly proprietary) is there by default (not installed by me explicitly). This is quite concerning in …
1 Like