升级Ubuntu后系统托盘图标消失


45

我有许多带有托盘图标的应用程序,例如davmail,硬件监视器。我在Ubuntu 14.04上缺少此功能。有没有人有办法解决吗?

有一些工具,例如Skype指示器,但是我需要针对此问题的常规解决方案,以便可以将应用程序图标添加到系统托盘中。


Answers:


158

您可能需要做两件事:

1.安装sni-qt库。

安装sni-qt 安装女妖(单击链接),或sudo apt-get install sni-qt sni-qt:i386从终端安装,然后重新启动Skype。托盘/面板图标现在应该回来了!

需要执行此步骤的原因是因为sni-qt是由Ubuntu存储库Skype软件包自动安装的,而不是由您直接下载的Skype deb自动安装的。将Skype 4.0放入Ubuntu仓库后,您可以从那里进行安装,而不再需要此安装。

2.您可能还需要将指标列入白名单

我们不知道为什么,但是对于某些系统,在指示器显示之前,需要执行此附加步骤(感谢Bruno Pereira!)

步骤

  1. 安装软件包dconf-tools安装dconf-tools(单击链接),或从终端安装sudo apt-get install dconf-tools

  2. 从Dash(或从终端)打开dconf编辑器dconf-editor

    在此处输入图片说明

  3. 在左侧边栏中,使用三角形导航至 桌面 > 统一 > 面板。在Ubuntu 12.10上,您需要导航到com > canonical > unity > panel。双击[JavaEmbedded...]右侧的橙色部分,然后添加,'skype'以显示Skype指示器,如下所示:

    在此处输入图片说明

  4. Enter,关闭dconf编辑器,注销并登录-您的指示器现在应该返回了!


9
在Ubuntu 12.10中,我在以下位置找到了它dconf-editorcom> canonical> unity> panel
aecolley 2012年

2
在Ubuntu 12.10上,您没有一个panel统一的项目。:(虽然一个零的答案有效
阿里

4
从13.04开始,com>规范>统一>面板桌面>统一>面板都不存在。IMO正确的解决方案是按此处
Andrii Chernenko 2013年

2
可以确认这在13.10上效果很好,我不需要将其列入白名单。只需安装该软件包并退出,然后再次启动Skype即可修复它:)
Andrea

1
在Ubuntu 14.04中,我发现我需要用大写字母更改Skype,以便在允许图标之前将所有小写字母都改为Skype。在我升级到14.04 / Trusty之前,有资本的Skype以前曾工作过。
克里斯·斯莫顿

67

要在Ubuntu中显示Skype托盘图标,请安装sni-qt软件包:

sudo apt-get install sni-qt:i386

1
这实际上使它在14.04中对我有用-而且它是sni-qt:i386,而不仅仅是sni-qt。(在我的系统(64位)上,Skype也安装为skype:i386)。也许其他应用程序也有同样的问题。
sunew

将Ubuntu版本从12.04升级到14.04(脏安装),Skype托盘图标消失了。这解决了它
krukid 2014年

4
有关为何有效的更多信息:askubuntu.com/a/151118/48105。哦,别忘了注销/登录(或重新启动unity)才能生效。
Waldir Leoncio 2015年

1
在01年4月14日,我只需要在安装sni-qt:i386后杀死并重新启动Skype。效果很好。
amotzg 2015年

2
还在为16.04溶液(伤心地知道问题persits)。
jgomo3 '16

19

在Ubuntu 12.04 LTS的Unity Notification Panel上启用Skype图标

当您全新安装Ubuntu 12.04(或与此有关的任何版本的Unity)时,您将安装Skype并希望它能够像以前一样工作。但是,如果关闭主窗口,您很快就会注意到Skype图标没有显示在顶部面板中。

要解决此问题,您将需要运行一些命令。因此,打开您的终端并运行以下命令:

gsettings get com.canonical.Unity.Panel systray-whitelist

您应该得到这样的内容:

['JavaEmbeddedFrame', 'Wine', 'Update-notifier']

基本上,这意味着Skype未列入白名单,因此默认情况下不允许其显示其托盘图标。我们需要解决此问题。将“ Skype”追加到列表中,以便您具有以下内容:

['JavaEmbeddedFrame', 'Wine', 'Update-notifier', 'Skype']

然后用双引号(“)将其包装,并在其前面添加设置com.canonical.Unity.Panel systray-whitelist的gsettings。此时,您应该具有以下内容:

gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Wine', 'Update-notifier', 'Skype']"

现在,只需将其复制到您的终端并执行命令即可。之后重新启动。现在您应该看到该图标。

来源在此处输入链接描述


感谢您在打开DConf编辑器时提供命令b / c,但在Unity下看不到Panel选项。在我还安装了sni-qt(不确定是否需要)之后,这对我来说效果很好。
kingdango 2012年

6
在执行第一个命令后:No such schema 'com.canonical.Unity.Panel'。Ubuntu 13.04 64位。
Hubro

1
此处相同:“没有这样的架构” Ubuntu 13.04 64位
Luis Lobo Borobia,2013年


10

这是因为Ubuntu从13.10版本起已关闭白名单。这里有两个解决方法:

要么

sudo apt-get install libappindicator1

要么

sudo apt-add-repository ppa:gurqn/systray-trusty
sudo apt-get update
sudo apt-get upgrade

有关更多信息: 系统托盘图标未显示 http://ubuntuforums.org/showthread.php?t=2217458 https://launchpad.net/~gurqn/+archive/systray-trusty


5
它在14.04中不起作用
艾哈迈德·戴夫

2
libappindicator1本身对我不起作用(通过干净的14.04 AMD64安装),但在安装systray-trusty(包括手动gedit步骤)并重新启动后,它仍然起作用。
paulcm 2014年

1
对于Utopic,您应该使用ppa:gurqn:systray-utopic,如果有关系的话
Danatela 2014年

还可提供生动的版本ppa:gurqn:systray-vivid
Hamman Samuel 2015年


5

也许您需要将Skype列入通知区域白名单(我不确定Skype是否包含一个应用程序)

最简单的方法是安装dconf-tools

sudo apt-get install dconf-tools

或使用软件中心 通过软件中心安装

然后按alt+ f2并输入dconf-editor以查看如下程序:

dconf编辑器

导航至desktop-> unity->,panel然后将要添加白名单的应用添加到列表的末尾(如果需要,您必须添加“ Skype”),以逗号分隔。您可以改为将all所有应用程序列入白名单以使用通知区域。

您将需要注销并再次登录才能应用更改。

更多信息:http : //www.webupd8.org/2011/04/how-to-re-enable-notification-area.html


1
我看不到统一的“面板”。我想念什么吗?我正在14.04
itsols 2015年

路径可能已更改为14.04,不能肯定地说,因为我现在不使用Unity
zurdo

4

这是在Ubuntu 16.10 64位Unity桌面下恢复Skype和Franz指示器的工作方式

1)我安装SNI-QT:I386提到这里sudo apt-get install sni-qt:i386

2)我安装libappindicator提到这里sudo apt-get install libappindicator1

3)最后,我通过软件中心安装了位于http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu/pool/main/p/pidgin-indicator/的.deb软件包。如前所述这里,这提供了最终的解决方案。


非常感谢您的努力!只是一个问题:如果只需要修复Skype和Franz,为什么我们需要安装Pidgin指示器?
orschiro

尽管我毫不怀疑在pidgin-indicator .deb软件包中可以找到它的原因,但我现在所知道的只是它对我有用。不幸的是,目前我没有时间进一步研究它。
极客长老

我的问题一定是其他问题。即使安装了Pidgin Indicator之后,我仍然遇到问题...
orschiro

奇怪,您是否完成了所有3个步骤?
极客老人

1
这对我来说效果很好。第一次运行时,Skype由于某种原因而冻结,但是从第二次开始,它开始工作。
Francesco Casula

3

参考

在这里,我向您发布了一篇文章,解释了如何将Skype包含在Unity系统托盘白名单中。

我有Ubuntu 12.04,它对我有用!

细节

基本上,打开一个新终端并执行以下命令:

gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Wine', 'Update-notifier', 'Skype']"

然后重新启动Skype。



2

对我来说,dconf编辑器中的路径是:

com -> canonical -> indicator -> appmenu -> messages

然后单击应用程序并在值中添加'skype'。我正在运行Ubuntu 13.10(64位)。


1
不适用于14.04 Trusty。
mcmlxxxiii

2

自201512月起在Ubuntu 14.04中可用的解决方案是安装以下PPA:

sudo apt-add-repository ppa:fixnix/indicator-systemtray-unity
sudo apt-get update
sudo apt-get install indicator-systemtray-unity

这会在任务栏中为您提供一个箭头,您可以单击该箭头以显示图标。您还可以在栏中显示图标,并在以下位置找到说明:http : //www.webupd8.org/2015/05/on-demand-system-tray-for-ubuntu.html

为什么其他解决方案不再起作用?对Unity的更新不断打破其他ppa解决方案,而且似乎没有人致力于使它们保持最新。


1

转到Skype->选项。

在常规类别中,选中“在系统托盘中最小化启动Skype”。


不,那没什么改变。但是,该选项(以德语显示)被标记为最小化启动(不涉及系统托盘)。因此,现在我只需要在启动器中单击两次按钮
miceterminator 2012年

1

我正在使用带有tint2面板的Gnome-Flashback(以前称为Fallback / Classic)。我尝试了所有这些修复程序,但没有一个对我有用。我什至试过

sudo add-apt-repository ppa:timekiller/unity-systrayfix
sudo apt-get update
sudo apt-get upgrade

没运气。甚至尝试杀死tint2并改用gnome-panel。对于我的许多(但不是全部)应用程序,仍然没有图标。

我终于找到了一种解决方案,同时正在寻找一种方法来(特别是)使网络管理器在此处显示在系统托盘中。由于我将Cairo-Dock用作启动器,因此我只更改了未显示到的应用程序的所有启动命令dbus-launch app-launch-commandapp-launch-command该应用的常规启动命令在哪里。对于启动应用程序也是如此,它就像一个魅力。


0

该解决方案可以在Ubuntu 17.04上正常工作

只需使用“ env XDG_CURRENT_DESKTOP = Unity”运行该应用程序。例如,要启动Linux版Skype,可以使用:

env XDG_CURRENT_DESKTOP=Unity skypeforlinux

要永久保留此修复程序,请将应用程序桌面文件从/ usr / share / applications /复制到〜/ .local / share / applications /,然后编辑该文件并通过添加“ env XDG_CURRENT_DESKTOP = Unity”来更改“ Exec”行( “ Exec =”之后的数字。

有关更多详细信息,请访问http://www.webupd8.org/2017/04/fix-appindicator-not-working-for.html


-2

我遇到过同样的问题。这是我所做的更正。

开放终端

sudo apt-get update
sudo apt-get install --reinstall ubuntu-desktop
sudo apt-get install unity
sudo shutdown -r now

每个解决方案都没有重新安装,至少没有在ubuntu中提供。
igaurav
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.