Linux shell script launcher not strictly correct
In the linux shell scrip launcher the actual binary is launched using the bash 'eval' command. I really do not understand the value of using eval in this context.
Even worse, in the non 'run-bg case' case, this lead to a particularly complicated problem to insvestigate in some of my code. What was happening is that I launched successive openvibe designers which were using a TCP writer. When I killed them from my software, it is actually the shell that is killed and the underlying openvibe binary was continuing to run long enough to accept the tcp client instead of the next invocation of the designer.
In bash, you have to use exec to replace the current shell with the new process. This is simpler (not need to explictly return the code) and safer. In addition, this removes the need for the run-bg parameter (just run openvibe-designer ... &).
I do not know what triggered the use of eval in the first place (at best it is not necessary and as explained earlier exec is a better choice).