Skip to content

andia89/Hardcode-Tray

 
 

Repository files navigation

Code Issues Codacy Badge Codacy Badge Gitter Hardcode-Tray release

Hardcode-Tray

Fixes Hardcoded tray icons in Linux

The script will automagically detect your default theme, the right icon size, the hardcoded applications, the right icons for each indicator and fix them. All that with the possibilty to revert to the original icons.

Themes

Here's a list of themes that supports Hardcode-Tray:

Preview
Preview

Install

Arch Linux (AUR):

Stable version:

yaourt -S hardcode-tray

Developpement version:

yaourt -S hardcode-tray-git

Ubuntu 14.04 / 16.04 / 16.10 / 17.04 (PPA):

sudo add-apt-repository ppa:andreas-angerer89/sni-qt-patched
sudo apt update
sudo apt install sni-qt sni-qt:i386 hardcode-tray

Manual install

  1. Download and install the script:
cd /tmp && wget -O - https://raw.githubusercontent.com/bil-elmoussaoui/Hardcode-Tray/master/install.sh | bash
  1. Install dependencies:
  • git
  • wget
  • python3
  • python3-gi
  • python3-cairosvg
  • inkscape
  • librsvg
  • patched sni-qt

You can build the patched version of sni-qt from source code if you are using an other distro (like Fedora).
The sni-qt:i386 is used for 32 bits applications as Skype.
Teamviewer is also using the sni-qt package, however it is shipping its own version. Therefore this script also overwrites the version shipped by teamviewer with the patched one. 4. Open Hardcode-Tray using this command

hardcode-tray
  1. Enjoy!

Options

  • --apply and --revert

Hardcode-Tray shows by default a welcome message and ask the user to choose between applying the fix or reverting it. You can hide that using

hardcode-tray --apply

or

hardcode-tray --revert
  • --only

You can use --only argument to fix/revert only one application, don't use the argument if you want to fix all applications your icon theme supports.

hardcode-tray --only telegram,skype

In order to get the names needed to fix only specific programs, you can look at the app_name key in the json files for the program. There you can find the corresponding name for the program you want to fix.

  • --path

If you installed your app in a non standard location, you can override the path where the icons are stored using the --path argument. Only works in combination with the --only argument for a single application.

hardcode-tray --only telegram --path /home/user/telegram/
  • --size

You can also use --size {24,22,16} to force the script to use a different icon size or if the script does not detect your desktop environment.

hardcode-tray --size 24 --only dropbox
  • --theme

You can fix your hardcoded icons using an other theme than the default one.

hardcode-tray --theme Numix --only dropbox
  • --force-inkscape

Hardcode-Tray by default detects if the user have either Inkscape or Cairo installed and use on of them to convert SVG icons to PNG. Cairo does not detect CSS styling on SVG icons (see #245).

hardcode-tray --force-inkscape
  • --version

You can print the version of Hardcode-Tray using

hardcode-tray --version
  • --update

You can also update to the latest version of the script

hardcode-tray --update
  • --update-git

You can also update to the git version of the script

hardcode-tray --update-git

Uninstallation

To remove the script completely from your desktop you can use

cd /tmp && wget -O - https://raw.githubusercontent.com/bil-elmoussaoui/Hardcode-Tray/master/uninstall.sh | bash

Credits

  • Modified version of data_pack.py, by The Chromium Authors released under a BSD-style license
  • Qt applications icons name by elementaryPlus team

Hardcode-Tray wiki!

About

Fixes Hardcoded tray icons in Linux

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 92.1%
  • Shell 7.9%