QubesOS / qubes-issues

The Qubes OS Project issue tracker
https://www.qubes-os.org/doc/issue-tracking/
536 stars 48 forks source link

Gentoo: x11-base/xorg-server-21.1.3 breaks qubes X integration #7228

Closed daewok closed 2 years ago

daewok commented 2 years ago

How to file a helpful issue

Qubes OS release

4.1.0-rc4

Brief summary

After installing x11-base/xorg-server-21.1.3 (and x11-base/xorg-drivers-21.1) in a Gentoo template, I am no longer able to display any X windows from VMs using that template (or the template VM itself).

Steps to reproduce

  1. Install Gentoo template
  2. sudo emerge --sync
  3. sudo emerge -1 x11-base/xorg-server
  4. Shutdown template VM
  5. Try to open a terminal using the template or AppVM based on the template

Expected behavior

VM boots, terminal window opens

Actual behavior

VM boots, but nothing is ever displayed.

lubellier commented 2 years ago

@daewok : I saw this, I restored my gentoo VM from backup and search how to solve this. The solution was :

emerge -av1 xorg-server @x11-module-rebuild

source : https://wiki.gentoo.org/wiki/Xorg#Blockers_when_updating_xorg-server_with_xorg-drivers

daewok commented 2 years ago

That had no effect for me @lubellier. In my case, emerging xorg-server alone automatically handled the rebuild of the drivers.

Here's two snippets showing the packages built are the same:

~ $ sudo emerge -av1 xorg-server

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild  rR    ] x11-drivers/xf86-video-vesa-2.5.0::gentoo  0 KiB
[ebuild  rR    ] x11-drivers/xf86-video-nouveau-1.0.17::gentoo  0 KiB
[ebuild  rR    ] x11-drivers/xf86-video-intel-2.99.917_p20201215::gentoo  USE="dri sna udev -debug -tools -uxa -xvmc" 0 KiB
[ebuild  rR    ] x11-drivers/xf86-video-fbdev-0.5.0-r1::gentoo  0 KiB
[ebuild  rR    ] x11-drivers/xf86-video-dummy-0.3.8::gentoo  USE="-dga" 0 KiB
[ebuild  r  U  ] x11-drivers/xf86-video-ati-19.1.0-r1::gentoo [19.1.0::gentoo] USE="udev" 0 KiB
[ebuild  rR    ] x11-drivers/xf86-video-amdgpu-21.0.0::gentoo  USE="udev" 0 KiB
[ebuild  rR    ] x11-drivers/xf86-input-libinput-1.2.0::gentoo  0 KiB
[ebuild  r  U  ]  x11-base/xorg-server-21.1.3:0/21.1.3::gentoo [1.20.14:0/1.20.14::gentoo] USE="systemd udev xorg -debug (-elogind) -minimal (-selinux) -suid -test -unwind -xcsecurity -xephyr -xnest -xvfb (-dmx%) (-kdrive%)" 4840 KiB
[ebuild     U  ]   x11-base/xorg-drivers-21.1::gentoo [1.20-r2::gentoo] INPUT_DEVICES="libinput -elographics -evdev -joystick -synaptics -vmmouse -void -wacom" VIDEO_CARDS="amdgpu dummy fbdev intel nouveau radeon radeonsi vesa -ast (-freedreno) (-geode) -glint -i915 -i965 -mga -nv -nvidia (-omap) -qxl -r128 -siliconmotion (-tegra) (-vc4) -via -virtualbox -vmware" 0 KiB

Total: 10 packages (3 upgrades, 7 reinstalls), Size of downloads: 4840 KiB

The following packages are causing rebuilds:

  (x11-base/xorg-server-21.1.3:0/21.1.3::gentoo, ebuild scheduled for merge) causes rebuilds for:
    (x11-drivers/xf86-video-dummy-0.3.8:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-nouveau-1.0.17:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-amdgpu-21.0.0:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-vesa-2.5.0:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-fbdev-0.5.0-r1:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-ati-19.1.0-r1:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-video-intel-2.99.917_p20201215:0/0::gentoo, ebuild scheduled for merge)
    (x11-drivers/xf86-input-libinput-1.2.0:0/0::gentoo, ebuild scheduled for merge)
~ $ sudo emerge -av1 xorg-server @x11-module-rebuild

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild   R    ] x11-drivers/xf86-video-vesa-2.5.0::gentoo  0 KiB
[ebuild   R    ] x11-drivers/xf86-video-nouveau-1.0.17::gentoo  0 KiB
[ebuild   R    ] x11-drivers/xf86-video-intel-2.99.917_p20201215::gentoo  USE="dri sna udev -debug -tools -uxa -xvmc" 0 KiB
[ebuild   R    ] x11-drivers/xf86-video-fbdev-0.5.0-r1::gentoo  0 KiB
[ebuild   R    ] x11-drivers/xf86-video-dummy-0.3.8::gentoo  USE="-dga" 0 KiB
[ebuild     U  ] x11-drivers/xf86-video-ati-19.1.0-r1::gentoo [19.1.0::gentoo] USE="udev" 0 KiB
[ebuild   R    ] x11-drivers/xf86-video-amdgpu-21.0.0::gentoo  USE="udev" 0 KiB
[ebuild   R    ] x11-drivers/xf86-input-libinput-1.2.0::gentoo  0 KiB
[ebuild     U  ]  x11-base/xorg-server-21.1.3:0/21.1.3::gentoo [1.20.14:0/1.20.14::gentoo] USE="systemd udev xorg -debug (-elogind) -minimal (-selinux) -suid -test -unwind -xcsecurity -xephyr -xnest -xvfb (-dmx%) (-kdrive%)" 4840 KiB
[ebuild     U  ]   x11-base/xorg-drivers-21.1::gentoo [1.20-r2::gentoo] INPUT_DEVICES="libinput -elographics -evdev -joystick -synaptics -vmmouse -void -wacom" VIDEO_CARDS="amdgpu dummy fbdev intel nouveau radeon radeonsi vesa -ast (-freedreno) (-geode) -glint -i915 -i965 -mga -nv -nvidia (-omap) -qxl -r128 -siliconmotion (-tegra) (-vc4) -via -virtualbox -vmware" 0 KiB

Total: 10 packages (3 upgrades, 7 reinstalls), Size of downloads: 4840 KiB

And the issue shows up after running either emerge command.

lubellier commented 2 years ago

@daewok : try to emerge qubes-gui-agent, I found this in my emerge.log:

164xxxxxxx: Started emerge on: Jan 19, 2022 xx:xx:xx
164xxxxxxx:  *** emerge --oneshot --ask --regex-search-auto=y --verbose xorg-server @x11-module-rebuild
164xxxxxxx:  >>> emerge (1 of 10) app-emulation/qubes-gui-agent-4.1.23 to /
164xxxxxxx:  === (1 of 10) Cleaning (app-emulation/qubes-gui-agent-4.1.23::/var/db/repos/qubes/app-emulation/qubes-gui-agent/qubes-gui-agent-4.1.23.ebuild)
164xxxxxxx:  === (1 of 10) Compiling/Merging (app-emulation/qubes-gui-agent-4.1.23::/var/db/repos/qubes/app-emulation/qubes-gui-agent/qubes-gui-agent-4.1.23.ebuild)
164xxxxxxx:  === (1 of 10) Merging (app-emulation/qubes-gui-agent-4.1.23::/var/db/repos/qubes/app-emulation/qubes-gui-agent/qubes-gui-agent-4.1.23.ebuild)
164xxxxxxx:  >>> AUTOCLEAN: app-emulation/qubes-gui-agent:0
164xxxxxxx:  === Unmerging... (app-emulation/qubes-gui-agent-4.1.23)
164xxxxxxx:  >>> unmerge success: app-emulation/qubes-gui-agent-4.1.23
164xxxxxxx:  === (1 of 10) Post-Build Cleaning (app-emulation/qubes-gui-agent-4.1.23::/var/db/repos/qubes/app-emulation/qubes-gui-agent/qubes-gui-agent-4.1.23.ebuild)
164xxxxxxx:  ::: completed emerge (1 of 10) app-emulation/qubes-gui-agent-4.1.23 to /
164xxxxxxx:  >>> emerge (2 of 10) x11-base/xorg-server-21.1.3 to /
daewok commented 2 years ago

Thanks, that was the hint I needed! Opened a PR on the Qubes Gentoo overlay that should fix this going forward.

Only downside is that the need to update qubes-gui-agent is detected only if it is emerged again before upgrading xorg-server.

fepitre commented 2 years ago

Closing this issue as of https://github.com/fepitre/qubes-gentoo/pull/8. If this issue persist, don't hesitate to reopen it.