| Summary: | Application Launcher not using overridden system .desktop entries | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | m.mairleitner |
| Component: | Application Launcher (Kickoff) widget | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | CONFIRMED --- | ||
| Severity: | normal | CC: | criguada, EpicTux123, kde, kdedev, mikel5764, nate, noahadvs, sitter |
| Priority: | NOR | ||
| Version First Reported In: | 6.4.5 | ||
| Target Milestone: | 1.0 | ||
| Platform: | openSUSE | ||
| OS: | Linux | ||
| See Also: | https://bugs.kde.org/show_bug.cgi?id=512332 | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: |
application-menu-after-edit
output of strace -f -o /tmp/log kbuildsycoca6 --noincremental kbuildsycoca6 log output of QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental libreoffice-writer.desktop from ~/.local/share/applications env |grep XDG_ QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental chrome-files QT_LOGGING_RULES="*=true" kbuildsycoca6 --noincremental |
||
|
Description
m.mairleitner
2025-10-06 05:38:23 UTC
I have the same behavior on my two machines running openSUSE Tumbleweed. Here are the details of one machine, in case it helps: Operating System: openSUSE Tumbleweed 20251004 KDE Plasma Version: 6.4.5 KDE Frameworks Version: 6.18.0 Qt Version: 6.9.2 Kernel Version: 6.17.0-1-default (64-bit) Graphics Platform: Wayland Processors: 12 × AMD Ryzen 5 3600 6-Core Processor Memory: 32 GiB of RAM (31,3 GiB usable) Graphics Processor: AMD Radeon RX 550 / 550 Series Is the issue only visual in this dialog or does it use the wrong Exec as well? Yes, it executes without the modified Parameters.
When i use:
> gtk-launch google-chrome.desktop
everything works as expected.
I suppose /tmp/log generated by this command would be enlightening: strace -f -o /tmp/log kbuildsycoca6 --noincremental (In reply to Harald Sitter from comment #4) > I suppose /tmp/log generated by this command would be enlightening: > > strace -f -o /tmp/log kbuildsycoca6 --noincremental I ran the command and took a look at the log, but I did not find anything enlightening. But, obviously, it's not easy to find something enlightening in a nearly 50k lines text file if you don0t know what you're looking for ;-) I am attaching the file here (zipped). Oh, one more thing... when running the command I got this output: > strace -f -o /tmp/log kbuildsycoca6 --noincremental kbuildsycoca6 running... kf.service.sycoca: The menu spec file ( "" ) contains a Layout or DefaultLayout tag without the mandatory Merge tag inside. Please fix it. Created attachment 185551 [details]
output of strace -f -o /tmp/log kbuildsycoca6 --noincremental
There is an unexpected lack of chromes in that debug output. Please attach your /usr/share/applications/google-chrome.desktop And, what's the output of: env |grep XDG_ QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental (In reply to Harald Sitter from comment #7) > There is an unexpected lack of chromes in that debug output. > > Please attach your /usr/share/applications/google-chrome.desktop > > And, what's the output of: > > env |grep XDG_ > QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental My problem is not with Google Chrome, but with other applications for which the command line is not correctly reflected. e.g. I have to use a couple environment variables to have LibreOffice correctly adapt to my HiDPI monitor, but even after adding those environment variables to the .desktop file they're not reflected in the GUI and they do not work. If I copy the .desktop file changing its name (e.g. libreoffice-writer.desktop ==> libreoffice-writer-hidpi.desktop) I get another entry in the applications menu and this one works correctly. I am attaching libreoffice-writer.desktop. The output of `env |grep XDG_`: >XDG_CONFIG_DIRS=/home/cris/.config/kdedefaults:/etc/xdg:/usr/local/etc/xdg:/usr/etc/xdg >XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1 >XDG_MENU_PREFIX=plasma- >XDG_SEAT=seat0 >XDG_SESSION_DESKTOP=KDE >XDG_SESSION_TYPE=wayland >XDG_CURRENT_DESKTOP=KDE >XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 >XDG_SESSION_CLASS=user >XDG_VTNR=3 >XDG_SESSION_ID=3 >XDG_RUNTIME_DIR=/run/user/1000 >XDG_DATA_DIRS=/home/cris/.local/share:/home/cris/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop The output of `QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental` is also attached (zipped). Created attachment 185552 [details]
kbuildsycoca6 log
Created attachment 185553 [details]
output of QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental
Created attachment 185554 [details]
libreoffice-writer.desktop from ~/.local/share/applications
Created attachment 185555 [details]
env |grep XDG_
Created attachment 185556 [details]
QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental
I've also added the outputs of:
> strace -f -o /tmp/log kbuildsycoca6 --noincremental
> env |grep XDG_
> QT_LOGGING_RULES=*=true kbuildsycoca6 --noincremental
Very perplexing. m.mairleitner@gmail.com can you please attach /home/matthias/.config/menus/applications-merged/user-chrome-apps.menu /home/matthias/.local/share/desktop-directories/chrome-apps.directory /home/matthias/.local/share/applications/google-chrome.desktop /usr/share/applications/com.google.Chrome.desktop /usr/share/applications/google-chrome.desktop Created attachment 185557 [details]
chrome-files
Here you go. check out: chrome-files.tar.gz Thanks A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kservice/-/merge_requests/215 Unfortunately none of the existing data is showing what exactly goes wrong. The strace shows that the file is definitely being looked at, I presume it gets discarded for some reason though. I see nothing peculiar in the files you've posted and also am not able to reproduce this on my system. I've started adding some more debug context for the next kde frameworks release. If one of you knows how to rebuild an rpm with that patch that'd be very helpful, otherwise we have to wait a month for the release and then revisit this bug. Thanks for looking into this, sitter@kde.org. I hope to find time to do that over the weekend. I’ll attach the new logs here and let you know. Git commit bec686d532e8c99df19cfb802198530ace5a72e6 by Harald Sitter. Committed on 07/10/2025 at 04:13. Pushed by sitter into branch 'master'. kbuildsycoca: debug++ it's currently not clear why/when kservices are ignored for the sycoca. expand debug coverage by adding some new messages and bringing back some old ones M +6 -3 src/sycoca/kbuildservicefactory.cpp M +2 -0 src/sycoca/kbuildsycoca.cpp https://invent.kde.org/frameworks/kservice/-/commit/bec686d532e8c99df19cfb802198530ace5a72e6 Created attachment 185929 [details]
QT_LOGGING_RULES="*=true" kbuildsycoca6 --noincremental
Sorry for the long delay.
Attached is the output of kbuildsyscoc6 --noincremental after rebuilding kservice with additional debugging output.
Please let me know if there's anything else I can analyze or provide.
Hi there, sitter@kde.org - have you found time to have a look at my logs? All the best, Matthias From the debug log, it looks like it finds /home/matthias/.local/share/applications/google-chrome.desktop but then later also finds /usr/share/applications/google-chrome.desktop, and appears to use that one. Could be a useful data point: is this a regression? Did it abruptly break at some point, or was it always broken, or did you just notice it recently after never having done in in the past so you don't know if it was broken earlier? (In reply to Nate Graham from comment #26) > Could be a useful data point: is this a regression? Did it abruptly break at > some point, or was it always broken, or did you just notice it recently > after never having done in in the past so you don't know if it was broken > earlier? In my case it's the last option, although "recently" for me means months ago... I believe it was at the end of 2024. I first reported it here in bug 497714 (that you closed as "downstream"), and then discussed about it on April the 19th, 2025, in the openSUSE forums (see https://forums.opensuse.org/t/local-desktop-files-do-not-override-global-desktop-files/184379). *** Bug 513155 has been marked as a duplicate of this bug. *** Hi nate@kde.org, for me this just happens when I want to modify google-chrome.desktop (other applications do work) and only on one machine (for some reason I am able to override a google-chrome.desktop entry on my desktop machine). All the Best, Matt |