I made a small tool for KDE Plasma (and other freedesktop desktops) that lets you easily customize single app icons:
- Use your own images or library
- Copy icon from another app
- Pick one icon from any installed theme (without switching global theme)
- Built-in pixel editor to create your own
- Batch apply, undo, overrides, missing icons overview
- Import image to turn it into an icon
Completely user-level, safe, and reversible. No manual .desktop editing.
GitHub: https://github.com/rayman1972/kappicon
AUR: kappicon or kappicon-git
Feedback welcome!-


The shell + inline Python bits are mostly because I forked from the original macosicons-linux project, which already used that pattern. The shell script is convenient for installation tasks (XDG paths, optional deps, desktop entry, cache updates, etc.) ; things that feel natural in bash for small Linux tools. For the CLI: the small Python calls are quick one off things, not performance heavy. The main GUI is pure Python/PyQt6 of course. You’re right though: spawning Python multiple times isn’t the most efficient, and inline code can be messy with escaping. It’s more pragmatic than beautiful. I kept it this way to get things working fast, which is not ideal long-term. If there’s a small user base and the program is actively being used, I’ll probably rewrite the whole thing.