Vin*_*ent 3 software-center gnome-software snap flatpak gnome-shell
我安装了常规gnome-software以便也能够安装 Flatpaks。在我这样做之后,一切都很好:我可以在启动器概述中看到“软件”和“Ubuntu 软件”并启动它们中的任何一个。
然而,重新启动后,我再也看不到 Ubuntu 软件,并且已安装的 Snap 也不再出现在菜单中。此后,我卸载了 gnome 软件,卸载并重新安装了 Ubuntu 软件(snap remove snap-store和snap install snap-store)以及我正在测试的 Snap 应用程序,然后重新启动,但我仍然看不到它们。
为什么会发生这种事?
根据 pomsky 的要求:
$ ls /var/lib/snapd/desktop/applications/
chromium_chromium.desktop
gnome-system-monitor_gnome-system-monitor.desktop
keepassxc_keepassxc.desktop
mimeinfo.cache
signal-desktop_signal-desktop.desktop
skype_skypeforlinux.desktop
snap-store_snap-store.desktop
spotify_spotify.desktop
ubports-installer_ubports-installer.desktop
Run Code Online (Sandbox Code Playgroud)
和
$ echo $XDG_DATA_DIRS
/home/vincent/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/
Run Code Online (Sandbox Code Playgroud)
与 Snap Store 和其他 Snap 应用程序关联的启动.desktop器存在于您的/var/lib/snapd/desktop/applications/目录中。正常情况下 GNOME Shell 应该能够检测到它们并将它们显示在应用程序列表中。但输出显示echo $XDG_DATA_DIRS该目录不是您的XDG_DATA_DIRS. 因此,将该/var/lib/snapd/desktop/目录添加到您的XDG_DATA_DIRS.
另外,作为解决方法,您可以将所需的.desktop启动器复制/var/lib/snapd/desktop/applications/到您的~/.local/share/applications/目录中。例如,对于 Snap Store 应用程序,您可以通过运行
cp /var/lib/snapd/desktop/applications/snap-store_snap-store.desktop ~/.local/share/applications/
Run Code Online (Sandbox Code Playgroud)