I’m trying to write a simple bash script that opens up GQRX, sends it some TCP commands, then closes it down.
Unfortunately, I’ve found that when I close the program like this, the next time it opens, it will pop up a window saying “crash detected” and ask me to review the configuration file. This prevents the app from loading unless someone is present to click the dialog box.
This error only seems to happen when I try to close the program using the bash script. Closing it by just clicking the X doesn’t cause this problem next time it’s launched.
I think I’m closing the app too aggressively which terminates it before it can wrap up its affairs, and it interprets this as a crash. What’s the best way to close the app to keep this from happening?
I’ve tried:
- pkill -3 gqrx
- pkill -13 gqrx
But the problem persists. Is there an even softer way to close an application?
Sure,
if GUI apps don’t handle it they just keep running. It’s just asking them to terminate.[Edit: I’ll try that](We could just have a look at the code of GQRX in specific or just try it.)
The default behaviour for SIGTERM (and most other signals) when unhandled is to terminate the process, so you might as well be sending SIGKILL. It won’t keep running unless specifically coded to catch the signal and do nothing with it.