Bug 456589 - Launching application via keyboard shortcut fails when when said app's .desktop entry contains arguments
Summary: Launching application via keyboard shortcut fails when when said app's .deskt...
Status: RESOLVED DUPLICATE of bug 440507
Alias: None
Product: kstart
Classification: Plasma
Component: general (show other bugs)
Version: 5.25.3
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-07-11 14:15 UTC by Lukas Sabota
Modified: 2022-08-15 23:48 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lukas Sabota 2022-07-11 14:15:10 UTC
SUMMARY
kstart5 is no longer able to start applications when arguments are supplied.  See the below example:

    $ kstart5 konsole -e top   
    kstart: Unknown option 'e'.

Here's an attempt to quote the entire command on the command-line:

    $ kstart5 'konsole -e top'
    Omitting both --window and --windowclass arguments is not recommended
    kf.kio.gui: Could not find an executable named: "konsole -e top"
    QObject::connect(KProcessRunner, KJob): invalid nullptr parameter
    QObject::connect(KProcessRunner, KJob): invalid nullptr parameter

This seems to affect kglobalaccel5 as well when launching .desktop files that contain commands with arguments.  Here is an example of a .desktop file that can no longer be launched with a kglobalaccel shortcut key:

$ cat ~/.local/share/applications/rofi-run.desktop

[Desktop Entry]
Categories=Utility;
Comment=Dmenu replacement to run applications
Exec=rofi -show run %u
Keywords=Terminal
Name=rofi-run
NoDisplay=false
Terminal=false
Type=Application
Version=1.0

When I press the shortcut associated with this desktop entry, the application is not launched and the following error message is displayed in the user journal:

Jul 11 09:51:25 myhostname kglobalaccel5[23085]: kstart: Unknown options: s, o, w.

This error messages matches the output of attempting to run the command in the desktop file with kstart5:

$ kstart5 rofi -show run  
kstart: Unknown options: s, o, w

However, the desktop file can be run through kstart5 by using the --application flag:

$ kstart5 --application rofi-run                       
Omitting both --window and --windowclass arguments is not recommended
24849

I'm not privy to the internals of how kglobalaccel and kstart5 communicate with one another, but it seems something has changed in a recent release.  I'm not sure whether this bug should be considered in kstart5, or whether kglobalaccel should be passing different arguments to kstart5.  Feel free to reassign this "product" as necessary.

Let me know if there is any unclear information that I can clear up.  Thanks!

STEPS TO REPRODUCE
1. Configure a desktop file that requires multiple arguments in the Exec= field.
2. Assign the above desktop application to a plasma custom shortcut.
3. Press the assigned key combination.

OBSERVED RESULT
The application does not start and an error message is generated in the logs

Jul 11 09:51:27 myhostname kglobalaccel5[23090]: kstart: Unknown options: s, o, w.

EXPECTED RESULT
Expected that the application launches as configured.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 5.25.2
KDE Frameworks Version: 5.96.0
Qt Version: 5.15.5
Kernel Version: 5.18.10-arch1-1 (64-bit)
Graphics Platform: X11

ADDITIONAL INFORMATION
Comment 1 gima+bugs-kde 2022-07-18 10:43:39 UTC
# PROBLEM

When pressing keyboard shortcut to launch an application. (In this case: Visual Studio Code.)

Error message appears in `journalctl --user --follow`:
> Jul 18 12:51:57 sm kglobalaccel5[2357]: kstart: Unknown option 'unity-launch'.


# ADDITIONAL NECESSARY DETAILS
(this is where the "unity-launch" comes from)
> cat /usr/share/applications/code-oss.desktop | grep --perl '\[|Exec|Name'

> [Desktop Entry]
> Name=Code - OSS
> GenericName=Text Editor
> Exec=/usr/bin/code-oss --unity-launch %F
> 
> [Desktop Action new-empty-window]
> Name=New Empty Window
> Exec=/usr/bin/code-oss --new-window %F


# VERSIONS

Plasma: plasma-desktop 5.25.3-1
KDE: frameworkintegration 5.96.0-1
Qt5: qt5-base 5.15.5+kde+r170-1
Qt6:: qt6-base 6.3.1-1

/usr/bin/kstart is owned by kde-cli-tools 5.25.3-1 at https://github.com/archlinux/svntogit-packages/blob/20eef2b9a3a158f66b1296cd7fa7d9e8b4bcb606/trunk/PKGBUILD

kglobalaccel 5.96.0-1 at https://github.com/archlinux/svntogit-packages/blob/3ff4c4f522e831aa06d00d44a1d0a3ce5ac17827/trunk/PKGBUILD

Operating System: Arch Linux                      
Kernel: Linux 5.18.12-arch1-1
Architecture: x86-64


# OTHER

Suggestion: change title
  from "kstart5 fails to launch applications when arguments supplied"
  to: "kstart fails to launch application when it's .desktop entry contains arguments"
Comment 2 gima+bugs-kde 2022-07-18 10:46:43 UTC
Sorry. I meant to say:
Suggestion: change title
  from "kstart5 fails to launch applications when arguments supplied"
  to: "Launching application with keyboard shortcut: kstart fails to launch application when the application's .desktop entry contains arguments"
Comment 3 gima+bugs-kde 2022-07-18 10:53:52 UTC
I don't know the proper procedur (if I'm allowed to do this),
, but since this bug is not "CONFIRMED", I will change it to be, because now two different users have experienced this same issue.
Comment 4 Nate Graham 2022-08-15 23:48:15 UTC

*** This bug has been marked as a duplicate of bug 440507 ***