使用 Snap 安装应用程序后(例如:slack、chromium 浏览器),它们不会出现在 gnome 启动器中。无法使用它们运行[gtk-launch][1]
。
.desktop
文件存在于/var/lib/snapd/桌面/应用程序但不知为何却不被认可。
例如,对于Slack应用程序,.desktop文件内容为:
➜ cat /var/lib/snapd/desktop/applications/slack_slack.desktop
[Desktop Entry]
X-SnapInstanceName=slack
Name=Slack
Comment=Slack Desktop
GenericName=Slack Client for Linux
Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/slack_slack.desktop /snap/bin/slack %U
Icon=/snap/slack/14/usr/share/pixmaps/slack.png
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Network;InstantMessaging;
MimeType=x-scheme-handler/slack;
并且,当尝试从命令行启动时:
➜ gtk-launch slack_slack
gtk-launch: no such application slack_slack
当我执行时,/snap/bin/slack
应用程序运行正常。
答案1
发生这种情况是因为/var/lib/snapd/desktop
不在XDG_DATA_DIRS
。
您可以通过输入来添加它
export XDG_DATA_DIRS="${XDG_DATA_DIRS}:/var/lib/snapd/desktop"
或(如果/etc/profile.d/snapd.sh
你的系统存在)
source /etc/profile.d/snapd.sh
在~/.profile
或 在 中~/.gnomerc
。
当然,您也可以将 snapd*.desktop
文件从复制或符号链接/var/lib/snapd/desktop/applications/
到 中的某个路径XDG_DATA_DIRS
,甚至可以复制到~/.local/share/applications/
。