We have moved to a new Sailfish OS Forum. Please start new discussions there.

Revision history [back]

click to hide/show revision 1
initial version

posted 2018-11-18 20:09:16 +0200

Problem with "Excec=" and "Single-Instance" in .desktop files on Sailfish OS 3

I'm using some applications written in Python. So the "Exec" and "Single-Instance" lines in the .desktop files look like:

Exec=python3 /path/to/application/app.py
X-Nemo-Single-Instance=no

The second app obviously has a different /path/to/application/app.py.

With the upgrade to revision 3, I can only start one such app. Trying to start the second does only bring the focus to the running first app.

So there are two bugs:

  • It seems that Sailfish OS 3 does only evaluate the binary name to check whether an app is running already, i.e. it identifies both apps as "python3" instead of the full path or the name of the desktop file.
  • The Single-instance setting is not obeyed.

With Sailfish OS 2 I did not have these issues. The workaround is trying to start both apps within a fraction of a second.

The ps entries of both apps:

nemo      5458  4.8  1.4 111424 43012 ?        Ssl  19:03   0:01 /usr/bin/python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5462  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5464 28.1  1.3 127416 40368 ?        Ssl  19:03   0:05 /usr/bin/python3 /home/nemo/UniversalRemote3/UniversalRemote.py
nemo      5466  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/UniversalRemote3/UniversalRemote.py

Problem with "Excec=" and "Single-Instance" in .desktop files on Sailfish OS 3

I'm using some applications written in Python. So the "Exec" and "Single-Instance" lines in the .desktop files look like:

Exec=python3 /path/to/application/app.py
X-Nemo-Single-Instance=no

The second app obviously has a different /path/to/application/app.py.

With the upgrade to revision 3, I can only start one such app. Trying to start the second does only bring the focus to the running first app.

So there are two bugs:

  • It seems that Sailfish OS 3 does only evaluate the binary name to check whether an app is running already, i.e. it identifies both apps as "python3" instead of the full path or the name of the desktop file.
  • The Single-instance setting is not obeyed.

With Sailfish OS 2 I did not have these issues. The workaround is trying to start both apps within a fraction of a second.

The ps entries of both apps:

nemo      5458  4.8  1.4 111424 43012 ?        Ssl  19:03   0:01 /usr/bin/python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5462  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5464 28.1  1.3 127416 40368 ?        Ssl  19:03   0:05 /usr/bin/python3 /home/nemo/UniversalRemote3/UniversalRemote.py
nemo      5466  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/UniversalRemote3/UniversalRemote.py

Edit to bump this issue. This is fundamental functionality that has regressed!

Problem with "Excec=" "Exec=" and "Single-Instance" in .desktop files on Sailfish OS 3

I'm using some applications written in Python. So the "Exec" and "Single-Instance" lines in the .desktop files look like:

Exec=python3 /path/to/application/app.py
X-Nemo-Single-Instance=no

The second app obviously has a different /path/to/application/app.py.

With the upgrade to revision 3, I can only start one such app. Trying to start the second does only bring the focus to the running first app.

So there are two bugs:

  • It seems that Sailfish OS 3 does only evaluate the binary name to check whether an app is running already, i.e. it identifies both apps as "python3" instead of the full path or the name of the desktop file.
  • The Single-instance setting is not obeyed.

With Sailfish OS 2 I did not have these issues. The workaround is trying to start both apps within a fraction of a second.

The ps entries of both apps:

nemo      5458  4.8  1.4 111424 43012 ?        Ssl  19:03   0:01 /usr/bin/python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5462  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/PySideMp3/PySideMp3.py
nemo      5464 28.1  1.3 127416 40368 ?        Ssl  19:03   0:05 /usr/bin/python3 /home/nemo/UniversalRemote3/UniversalRemote.py
nemo      5466  0.0  0.0   3972   776 ?        S    19:03   0:00 invoker --type=generic python3 /home/nemo/UniversalRemote3/UniversalRemote.py

Edit to bump this issue. This is fundamental functionality that has regressed!