Ron*_*Ron 54 launcher installed-programs snap
刚刚更新到 Ubuntu 16.04 并第一次尝试使用 snap 包。
所以我需要meshlab来查看一些stl文件。跑到pitn登录出现问题。发现snap包的命令行安装不需要登录。做了:
sudo snap install meshlab
Run Code Online (Sandbox Code Playgroud)
嘿,安装了 presto meshlap,没有 pitn 登录。从命令行工作正常。但是程序没有显示在启动器中。为什么是这样?snap 包不显示在启动器中吗?我怎样才能解决这个问题?
hac*_*kel 62
如果您使用的是 zsh,则 snap 二进制文件和桌面目录不会自动添加到您的环境变量中。为了解决这个问题,我在/etc/zsh/zprofile(取自Arch)中添加了以下行:
emulate sh -c 'source /etc/profile'
Run Code Online (Sandbox Code Playgroud)
这将使用 bash 模拟处理您的 /etc/profile 文件,后者反过来提供 /etc/profile.d/* 并设置正确的路径等。
仅将 snap 目录添加到您的路径中,而不包括所有其余的默认 bash 配置文件:
emulate sh -c 'source /etc/profile.d/apps-bin-path.sh'
Run Code Online (Sandbox Code Playgroud)
Pyr*_*yph 17
它内置在 snap 系统中,但您必须将链接添加到您的仪表盘中。启动程序类型
snap run meshlab
Run Code Online (Sandbox Code Playgroud)
一旦它启动并运行,右键单击该图标并单击“添加到破折号”。
小智 14
对我来说,它似乎也与 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
Run Code Online (Sandbox Code Playgroud)
小智 11
运行 Kubuntu 18.04 为我添加的解决方案
export XDG_DATA_DIRS="$XDG_DATA_DIRS:/var/lib/snapd/desktop/"
Run Code Online (Sandbox Code Playgroud)
像自定义文件snap-apps.sh在~/.config/plasma-workspace/env。但这仅适用于 Plasma 5,并且可能已经在 Ubuntu 18.10 中修复。
由于dsager 的回答已经提到,通常/etc/profile.d/apps-bin-path.sh似乎不起作用。
小智 11
将应用程序快捷方式复制/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)上执行此操作
snap 包不显示在启动器中吗?
只要快照提供正确的 .desktop 文件,它们就会这样做。只有 Meshlabmeshlabserver有一个合适的桌面文件(事实上,它显示在我的启动器中)。在meshlab.desktop文件,但是,试图给exec meshlab.meshlab,当它应该只是使用meshlab。结果,它没有出现。
我怎样才能解决这个问题?
如果您运行,snap info meshlab您将看到发布者的联系信息。我建议你向他们报告一个错误。在此之前,您始终可以meshlab从 CLI运行,或为其创建您自己的 .desktop 文件。
小智 6
对我来说帮助命令
ln -s /var/lib/snapd/desktop/applications ~/.local/share/applications/snap
此链接文件夹带有指向我的本地文件夹的快照应用程序快捷方式。现在我可以像其他应用程序一样运行快照应用程序。
我无法评论别人的帖子。但是,这是添加到 dsager 的答案中,它在 Fedora 28 上帮助了我(据我所知,使用 Wayland)
我将以下片段添加到我的 ~/.bash_profile 以在登录时链接 /var/lib/snapd/desktop/applications 中的每个文件。同样,这可以修改为删除不再存在的应用程序的链接,方法是切换 for 行和 if 行中的路径,然后用 rm 替换 ln。
for i in /var/lib/snapd/desktop/applications/*.desktop; do
if [ ! -f ~/.local/share/applications/${i##*/} ];then
ln -s /var/lib/snapd/desktop/applications/${i##*/} ~/.local/share/applications/${i##*/};
fi;
done
Run Code Online (Sandbox Code Playgroud)
可能有几种不同的方法来实现这一点,但它有效。
| 归档时间: |
|
| 查看次数: |
82295 次 |
| 最近记录: |