Personal icon patcher for Linux icon themes. Replaces app icons, folder icons, tray icons, and mimetypes with custom or alternative-theme SVGs across Papirus, Tela-grey-dark, and other themes.
| Script | Description |
|---|---|
app.sh |
Patches Papirus app icons (Slack, Telegram, VirtualBox, Chrome, Firefox, Spotify, etc.) |
tela-app.sh |
Same as app.sh but targets Tela-grey-dark theme |
tray.sh |
Patches system tray icons for Slack, Telegram, Dropbox, KeePassXC, Tailscale, MEGASync |
magic.sh |
Replaces Papirus folder/places icons with Qogir equivalents, patches mimetypes |
tray-padding.sh |
Reduces horizontal padding on GNOME Shell tray icons (Clipboard Indicator, Rectangle) |
Patches tray icons across Papirus-Dark, Tela-grey, and Tela-grey-dark themes:
- Slack - Custom Numix-style indicators (normal, unread, highlight) at 16/22/24px
- Telegram - Custom tray icons for both old panel names and new 6.x+ symbolic names (
org.telegram.desktop-*-symbolic) - Dropbox - Converts custom Papirus-based SVGs to PNGs, replaces bundled icons in
/opt/dropbox/and~/.dropbox-dist/ - KeePassXC - Replaces tray icons with macOS-style design (circle with key/lock)
- Tailscale - Custom systray SVGs via patched
tailscale-systraybinary (see below) - MEGASync - Papirus-style tray icons for Tela-grey/Tela-grey-dark
sudo bash tray.shCustom tailscale-systray build that uses theme-native SVG icons instead of embedded procedurally-generated PNGs. Source modifications in src/tailscale-custom/ and src/systray-custom/.
Icons in src/tailscale-tray/:
connected.svg- 3x3 dot grid with T-shape active patterndisconnected.svg- All dots inactiveexit-node-online.svg- Connected pattern with arrow overlayexit-node-offline.svg- Connected pattern with red X
Reduces the horizontal padding (-natural-hpadding) on GNOME Shell panel buttons for extensions that have oversized tray icons. Patches extension.js directly via Python for safe multi-line insertion.
Targets:
- Clipboard Indicator (
[email protected]) — system-installed, requires sudo - Rectangle (
[email protected]) — user-installed
Backups are saved to ~/.gnome-ext-backups/ before patching. Edit the PADDING variable at the top to adjust (default: 6px, GNOME default: 12px).
bash tray-padding.sh # requires sudo for Clipboard IndicatorMultiple design variants in src/telegram-tray/ (test1-test4, origin, old-papirus, backup):
cd src/telegram-tray/test4
bash apply.shClone the repo:
git clone https://github.com/sparkyvxcx/Personal-patch.gitFor folder/mimetype patching (magic.sh), clone Qogir into themes/:
mkdir themes && cd themes
git clone https://github.com/vinceliuice/Qogir-icon-theme.gitbash app.sh # Patch app icons (Papirus)
bash tela-app.sh # Patch app icons (Tela-grey-dark)
sudo bash tray.sh # Patch tray icons (all themes)
bash magic.sh # Patch folders/mimetypes (requires Qogir)- OS: Arch Linux
- DE: GNOME
- Themes: Papirus, Tela-grey-dark
GNOME Shell top panel with patched monochrome tray icons on a dark background. The indicator system trays from left to right are: Telegram (paper plane), Megasync (circled M), Portmaster (shield with green status dot), Dropbox (open box), Tailscale (3x3 dot grid), Clipboard Indicator (grid of squares), and Rectangle (overlapping windows). All icons follow a consistent monochrome style matching the Papirus/Tela-grey-dark themes, with reduced horizontal padding via tray-padding.sh.





