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.
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments