无法将自定义.desktop文件添加到Ubuntu扩展坞


45

问题:

我已经.desktop为Ubuntu 16.04创建了文件来访问我的Google Chrome配置文件,但是一旦我升级到Ubuntu 17.10(在Ubuntu 17.04上运行了),它们就被删除了,我无法将它们固定。

样本文件

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=google-chrome
Name[en_US]=Google Chrome
Exec=google-chrome --profile-directory=Default
Comment[en_US]=Chrome
Name=Google Chrome
Comment=Chrome Browser
Icon=google-chrome
Categories=Browser;Internet;

1
如果您可以在gnome-shell概述中看到它们,则可以DnD到扩展坞(不是最后)。如果不是,则将.desktop标记为可执行文件,d。单击,设置为受信任。运行后,它应显示在扩展坞中,您可以固定
doug

@doug但是那不会杀死Exec=google-chrome --profile-directory=Default吗?
Teivel

我不懂你的意思 您知道“标记为可执行文件”即r的意思吗?在.desktop上单击。>属性>权限>显而易见
doug

@doug它将在启动之前将参数传递给程序,在这种情况下,配置文件,如果我将其固定,则只会启动应用程序,而不是正确的配置文件(即访客,个人等)
Teivel

Answers:


67
  1. 在中创建.desktop文件~/.local/share/applications
  2. 在其中添加以下行

    [Desktop Entry]
    Comment=Chrome my profile
    Terminal=false
    Name=My Chrome
    Exec=google-chrome --profile-directory=Default
    Type=Application
    Icon=google-chrome
    

    (我将其命名为“ My Chrome”,以避免与现有的Google Chrome启动器混淆。您可以使用其他任何名称。)

  3. 使它可执行。

  4. 点击活动显示应用程序,然后搜索“我的Chrome”。它应该出现。

  5. 右键单击它,并将其标记为收藏。

    右键单击扩展坞中的应用程序图标时,未显示“ 添加到收藏夹 ”选项,请在“ 活动”屏幕中搜索该应用程序,然后将其拖到扩展坞中(由Legolas建议)。

如果没有任何效果,请参阅以下问答:无法将自定义启动器添加到Dock(*添加到收藏夹*)


是否需要重新启动或重新登录?对我来说,这甚至没有使事情显示在“活动”仪表板上。
Zelphir Kaltstahl

@Zelphir应该不是必需的,但是仍然可以尝试。如果仍然无法正常工作,请参阅
pomsky '18

1
放置路径时,不能使用〜。使用完整路径。当我有〜时,什么也没出现。转向完整路径效果很好。
Virmundi

是的,当然,你不能把~将在.desktop文件中,你必须把完整路径(没有 ~样品的内容.desktop文件虽然)。
pomsky '18年

非常感谢!经过2个小时的浏览,此答案解决了我的问题!
sh4dowb

5

我在Firefox Nightly中遇到了同样的问题。以下配置对我有效~/.local/share/applications/firefox-nightly.desktop

[Desktop Entry]
Type=Application
Name=Firefox Nightly
#
# WARNING: Remember to fix the path in Icon and Exec
#
Icon=/path/to/firefox-nightly/browser/icons/mozicon128.png
Exec=/path/to/firefox-nightly/firefox %u
Terminal=false
StartupWMClass=Nightly

如果没有StartupWMClass,则无法识别正在运行的应用程序,并且图标在扩展坞上显示两次。


2
相同应用程序的多个图标(在.desktop文件中未显示指定的图标后还回退到默认的“空白”图标)听起来像是一个单独的问题。我认为如果您提出一个新问题并自己添加一个答案会更好。已经有这个了
pomsky '17

1
@pomsky我将其发布在这里是因为我有同样的问题:无法在上下文菜单中将该应用标记为收藏。从活动屏幕上将其拖动几乎可以正常工作:该图标已固定,但是单击它会显示另一个图标。通过将StartupWMClass添加到您的配置中,它终于可以工作了。对困惑感到抱歉。也许我应该回答这个问题
Marcello Nuccio

1
我已经在StartupWMClass一个星期前在那里发布了答案(技巧)。如果您的答案有很大不同,欢迎您发布新答案。但是这个问题有点让人误解,OP中只有Wayland才有问题,而Xorg则没有。因此,我认为最好是您可以发布一个新问题并自己回答。我最近没有看到带有多个图标的新问题,只看到了一条评论。
pomsky

3

对于遇到问题的任何人,如果该应用程序未出现在“活动”中,请确保您的应用程序的.desktop文件中没有“ NoDisplay = true”。


0

我可以确认以上内容大多数都可以在Ubuntu 18.04中使用。

请注意,将.desktop文件放在〜/ .local / share / applications中没有视觉效果。

它并没有把一个条目您的桌面上!

但是,它确实将应用程序添加到您的应用程序列表中,然后允许将其添加到收藏夹(有时)。

那么,为什么文件与桌面无关时为什么以“ .desktop”作为扩展名呢?

如果您认为开发人员对此感到困惑,那么您将不会孤单。

真奇怪。。。

这个文件:

[Desktop Entry]
Version=1.0
Type=Application
Name=PhpStorm
Icon=/usr/local/PhpStorm-183.5153.36/bin/phpstorm.svg
Exec="/usr/local/PhpStorm-183.5153.36/bin/phpstorm.sh" %f
Comment=Lightning-smart PHP IDE
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-phpstorm

放置在〜/ Desktop中,名称为jetbrains-phpstorm.desktop ,在桌面上显示图标。

但是,如果它被命名为PhpStorm.desktop它确实把桌面上的图标。

放置在〜/ .local / share / applications中的名称为jetbrains-phpstorm.desktop的文件完全相同,可以做两件事:

  1. 在“显示应用程序”中显示“ PhpStorm”
  2. 允许您“添加到收藏夹”。

在〜/ .local / share / applications中,文件的名称无关紧要:jetbrains-phpstorm.desktop与PhpStorm.desktop的工作原理相同

当我说“有时”,这里有一个文件,该文件在〜/桌面的作品,并放在〜/。当地/股时/应用程序允许出现在应用程序中的“查看应用程序” ,但不会让你“添加到收藏夹”:

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=gnome-panel-launcher
Name[en_US]=Create Launcher
Exec=bash -c 'gnome-desktop-item-edit --create-new ~/Desktop'
Name=Create Shortcut
Icon=gnome-panel-launcher

肯定有气味...

(我一生只有6个小时无法回去...。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.