Upon launching, the Reverso app spawns two processes - Reverso (the app itself) and the annoying Reverso Helper, which occupies the menu bar with its icon and remains active even after cmd+Q -ing the main app.
killall "Reverso Helper"
does kill the unwanted process while keeping the main program intact. However, if the main app remains open for a dozen of seconds, the Helper process gets spawned again.
ps -o ppid=, -p $(pgrep "Reverso Helper") | xargs ps -p
tells us that the parent process of both Reverso and Helper is 1 /sbin/launchd
, "the service management framework used by macOS, similar in some ways to systemd on Linux", which is interfaced through a terminal tool launchctl.
I studied the launchctl manual rather superficially and looked for the Reverso Job Defenitions files in specified directories, but didn't find any. I didn't want to dig deeper in this direction.
I feel like I'm missing a more obvious and elegant way to prevent a process with certain name from starting on any Unix-like system, which would be much more useful to know than some macOS-specific stuff. Please, share your ideas.