2

I have Red Hat based system with Xfce DE and installed Skype last version from official site. When I running it (only once, with one user account) in system tray I seeing doubled Skype icon, and not only Skype as you can see on the screenshot.

How to get rid of the icon's duplicate?

screenshot


My systems:

  • RHEL 7.5
  • Centos 7.5
  • Xfce 4.12
  • Skype 8.28
  • Telegram desktop 1.3

Latest software for today..

3

As mentioned here: System tray icon in xfce | answers.microsoft.com, - there was same issue on Fedora 28 with GNOME desktop.

The electron framework appears to have issues with upscaling the tray image, but does not seem to have a problem with downscaling the image. So an alternative work-around for the current situation is to replace the small (16px) images with larger versions - and I suspect that even without this issue, in most cases, downscaling a 256px icon to (arbitrary) target tray size will look nicer than upscaling the extra small icons.

Until this is fixed in electron or worked around in skype by using larger icons by default, you can work around it yourself. To do so, one needs to unpack /usr/share/skypeforlinux/resources/app.asar (using electron asar tool), replace the images in /app/images/tray/linux/, and pack it back. The tray icons are already provided in two versions, 16px and 32px (HiDPI, @2x name suffix). So if your tray size does not exceed 32px, you can simply copy the 32px versions over 16px ones.


Solution by steps:

  1. Install required soft

    $ sudo yum install npm
    $ sudo npm install -g asar
    
  2. Unpack app.asar

    $ asar extract /usr/share/skypeforlinux/resources/app.asar ./skypeapp
    
  3. Replace smaller icons with big ones

  4. Repack app.asar and replace older one

    $ asar pack ./skypeapp ./app.asar
    $ sudo cp ./app.asar /usr/share/skypeforlinux/resources/app.asar
    
  • 1
    With sight modifications works for Debian 9 as well. – user128285 Jan 15 '19 at 21:14
1

As far as I can tell, this seems to be an issue with Electron (the framework behind the new Microsoft Skype) and maybe behind your other apps too.

Anyway, you have a few options as workarounds:

  1. Try installing (if you haven't) libappindicator1 and libappindicator3
  2. Reducing the icon size in the panel setttings (look at the last page in the Microsoft issue link above)
  3. Check the session/startup options to make sure you don't have 2 instances of the same app running (I know it's an obvious one, but, it happens).

There might be other workarounds until they fix the bug in Electron.

  • Don't install libappindicator or libappindicator-gtk3 in RHEL if you haven't, otherwise you get same problem with other tray icons like Telegram. This is issue with Electron – Drakonoved Aug 16 '18 at 17:24
  • 1
    You linked the same Microsoft question I referenced above :) – Leo Aug 18 '18 at 19:40
  • Ohh I see, ok, then expanding on your comment, did you get the second Telegram icon due to libappindicator? Did you remove it and solved that? Did you try the env variable with XDG_CURRENT_DESKTOP=XFCE too? – Leo Aug 18 '18 at 19:57
  • You gave me idea. I removed libappindicator and libappindicator-gtk3 then Telegram icon became proper size. Ubuntu methods such as XDG_CURRENT_DESKTOP=XFCE don't work in Xfce. – Drakonoved Aug 18 '18 at 20:11
0

From the solution proposed by astronos2007:

$ sudo npm install -g asar
$ asar extract /usr/share/skypeforlinux/resources/app.asar ./skypeapp
$ cd ./skypeapp/images/tray/linux
$ ls -1 | grep "@2x" | while read -r pngFile; do cp "./$pngFile" "./${pngFile//$@@2x/}"; done
$ cd ../../../../
$ asar pack ./skypeapp ./app.asar
$ sudo cp ./app.asar /usr/share/skypeforlinux/resources/app.asar
  • I tried this solution - it works. pls describe it in detail here. especially how to manually build that file. some mistakes in code.. – Drakonoved Nov 7 '18 at 10:52
-1

You could try liujheyu's answer on Ask Ubuntu (see reference):

As a workaround, change EXEC in /usr/share/applications/skypeforlinux.desktop from

Exec=/usr/bin/skypeforlinux %U

to

Exec=env XDG_CURRENT_DESKTOP=Unity /usr/bin/skypeforlinux %U

You have to make the same change to ~/.config/autostart/skypeforlinux.desktop so that skype can stay in tray everytime system reboot. However, it seems that skype will undo the change of this autostart file everytime it restarts. My solution is to make this file read-only, like

chmod 440 ~/.config/autostart/skypeforlinux.desktop

Seems to work on Mate (said in the post) and Ubuntu gnome-shell (worked for me).

  • doesn't work in Xfce.. – Drakonoved Aug 14 '18 at 11:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.