通过 snap 安装的程序未显示在启动器中

通过 snap 安装的程序未显示在启动器中

刚刚更新到 Ubuntu 16.04 并首次尝试 snap 包。

因此我需要 meshlab 来查看一些 stl 文件。遇到 pitn 登录问题。发现 snap 包的命令行安装不需要登录。执行:

sudo snap install meshlab

嘿,presto meshlap 安装好了,无需登录。从命令行运行良好。但是程序没有显示在启动器中。这是为什么?Snap 包没有显示在启动器中吗?我该如何解决这个问题?

答案1

如果您使用的是 zsh,则 snap 二进制文件和桌面目录不会自动添加到您的环境变量中。为了解决这个问题,我在 /etc/zsh/zprofile 中添加了以下行(取自 Arch):

emulate sh -c 'source /etc/profile'

这将使用 bash 模拟处理您的 /etc/profile 文件,进而获取 /etc/profile.d/* 并设置正确的 PATH 等。

仅将 snap 目录添加到路径中,而不包括所有其余的默认 bash 配置文件:

emulate sh -c 'source /etc/profile.d/apps-bin-path.sh'

答案2

将应用程序快捷方式从/var/lib/snapd/desktop/applications/复制到/usr/share/applications/

例子: sudo cp /var/lib/snapd/desktop/applications/brave_brave.desktop /usr/share/applications/

我必须在 GalliumOS 3.0(基于 Xubuntu)上执行此操作

答案3

对我来说,它似乎也与 Ubuntu 18.04 下的 Wayland/ZSH 组合有关——即使在变量/var/lib/snapd/desktop中列出XDG_DATA_DIRS(这是通过完成的/etc/profile.d/apps-bin-path.sh),启动器也无法识别该文件夹中的应用程序。

一个快速的解决方法是符号链接所需的桌面文件,例如:

ln -s /var/lib/snapd/desktop/applications/rubymine_rubymine.desktop .local/share/applications

答案4

运行 Kubuntu 18.04 时,我的解决方案是添加

export XDG_DATA_DIRS="$XDG_DATA_DIRS:/var/lib/snapd/desktop/"

snap-apps.sh到像中的自定义文件~/.config/plasma-workspace/env。但这仅适用于 Plasma 5,并且可能已在 Ubuntu 18.10 中修复。

作为dsager 的回答已经提到通常的方法/etc/profile.d/apps-bin-path.sh似乎不起作用。

相关内容