Summary: | Inconsistent Flatpak launch behavior across Application Launcher, Krunner and Overview that often leads to the application crashing | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | unblended_icing552 |
Component: | Application Launcher (Kickoff) widget | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | mikel5764, nate, noahadvs, unblended_icing552 |
Priority: | NOR | ||
Version: | 5.27.10 | ||
Target Milestone: | 1.0 | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=453202 | ||
Latest Commit: | https://invent.kde.org/plasma/plasma-workspace/-/commit/c5d6386c8f8f67ca9be189f51fe3da305220f96d | Version Fixed In: | 6.1 |
Sentry Crash Report: |
Description
unblended_icing552
2023-12-26 01:53:47 UTC
When KDE Plasma is bugged, by modifying the `Exec=` in desktop file, this is the result: - `systemd-run --user` works ✅ - `kstart` doesn't work ❌ - `kioclient exec` doesn't work ❌ Additionally, by enabling "Run in Terminal", the application also launches without problem. Enabling / disabling systemd startup doesn't make a difference (in making Flatpak applications launch): https://blog.davidedmundson.co.uk/blog/plasma-and-the-systemd-startup/ When systemd startup is disabled, by stopping plasmashell using `systemctl` and then starting it using KRunner, Application Launcher can then launch applications normally. The point still stands: Moving the launch logic into a centralized component reduces the runtime variations and thus less debugging effort requirements and less bugs. Specifically `systemd-run` works even when the other methods doesn't because of this. Launching logic is already centralized into the KIO::ApplicationLauncher job. The difference here is that Application Launcher calls that job in such a manner that it doesn't use DBus activation, while the other methods of launching apps (KRunner Task manager, etc) do. The last time I asked around, no one was able to recall whether this was intentional or not. Maybe it's time to change it. A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/3965 Git commit c5d6386c8f8f67ca9be189f51fe3da305220f96d by Nate Graham. Committed on 22/02/2024 at 21:33. Pushed by ngraham into branch 'master'. applets/kicker: Always use DBus activation for launching apps Setting the KIO::ApplicationLauncherJob::DeleteTemporaryFiles flag has the effect of not using DBus activation for launching apps. This causes subtly different launch and activation behaviors for when launching apps from Kicker/Kickoff etc. compared to doing so using Task Manager, KRunner, or all of the other app launching entry-points which do use DBus activation. The result is unusual bugs, and inconsistent, random-feeling behavior when things go wrong. Let's always use the commmon DBus activation codepath here. If it's broken or has bugs, we need to know about them and fix them, not provide a hidden and unexpected workaround. FIXED-IN: 6.1 M +0 -1 applets/kicker/plugin/appentry.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/c5d6386c8f8f67ca9be189f51fe3da305220f96d |