virt-manager 客户操作系统未在 Ubuntu 22.10 上获取键绑定

virt-manager 客户操作系统未在 Ubuntu 22.10 上获取键绑定

我最近注意到,当我按下诸如superALT+TAB等键绑定时,它会激活我的主机操作系统而不是我的客户操作系统。

因此,当我尝试通过按下进入我的客户机上的应用程序菜单时,super它只会进入我的主机上的应用程序菜单,与ALT+相同TAB

这种情况发生在我所有的虚拟机上,即使我在具有所有默认设置的虚拟机中运行带有 Ubuntu 安装程序的新虚拟机,也会发生这种情况。

系统详细信息:

操作系统名称:Ubuntu 22.10

GNOME 版本:43.20

窗口系统:Wayland

显卡:NVIDIA GeForce GTX 1660 / NVIDIA GeForce GTX 1660

VM 软件详细信息:

virt-manager 版本:4.1.0

QEMU 版本:1:7.0+dfsg-7ubuntu2

答案1

这是一个漏洞在 GNOME shell 中(Ubuntu 错误 1998017)。 它一直固定的上游,但修复尚未进入 Ubuntu。

作为一种解决方法,我使用 X 而不是 Wayland ( ) 从命令行启动 virt-manager WAYLAND_DISPLAY= virt-manager

但就在今天,我发现由于这是一个 javascript 文件,因此您可以相当轻松地自行修补。基本上,它归结为以下内容:

  1. mkdir -p ~/.gnome-shell-custom-overlays/ui
  2. echo 'export G_RESOURCE_OVERLAYS="/org/gnome/shell=$HOME/.gnome-shell-custom-overlays"' >> ~/.profile
  3. gresource extract /usr/lib/gnome-shell/libgnome-shell.so /org/gnome/shell/ui/inhibitShortcutsDialog.js > ~/.gnome-shell-custom-overlays/ui/inhibitShortcutsDialog.js
  4. $EDITOR ~/.gnome-shell-custom-overlays/ui/inhibitShortcutsDialog.js # manually patch

您可以查看要应用的补丁这里理论上,我认为您可以注销并重新登录以查看结果,但我还是重新启动了以确保万无一失。我只用这个补丁运行了几个小时,但到目前为止一切顺利。

.profile我计划在 GNOME Shell 更新时注释掉该行。然后重复步骤 3 和 4。如果仍然需要该补丁,请取消注释该行.profile以继续使用该补丁。如果不再需要,请清理所有内容并返回到没有补丁的 Ubuntu 版本。

相关内容