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.
For a better experience use Numix icon theme.
Before
After
- Install the script
cd /tmp && wget -O - https://raw.githubusercontent.com/bil-elmoussaoui/Hardcode-Tray/master/install.sh | bash
-
Install
python3-cairosvg
orinkscape
- Debian/Ubuntu :
sudo apt-get install python3-cairosvg
sudo apt-get install inkscape
- Fedora :
sudo dnf install python3-cairosvg
sudo dnf install inkscape
- Arch :
sudo pacman -S python-cairosvg
sudo pacman -S inkscape
-
Install the patched version of
sni-qt
- Debian/Ubuntu :sudo add-apt-repository ppa:cybre/sni-qt-eplus sudo apt-get update && sudo apt-get dist-upgrade sudo apt-get install sni-qt sni-qt:i386
- Arch : <br />
<pre>
yaourt sni-qt-eplus
yaourt lib32-sni-qt-eplus-bzr
</pre>
You can build it 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
- Enjoy!
--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 second column of db.csv
. 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
--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
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
- Modified version of
data_pack.py
, by The Chromium Authors released under a BSD-style license - Chromuim icons, extracted from
chrome_100_percent.pak
released under BSD-style license - Qt applications icons name by elementaryPlus team