shared from: https://feddit.org/post/1848262
I like the Slackware approach of installing the kitchen sink by default. Disk space is cheap.
But I find that the cluttering of the menus in KDE is a bit annoying. I use search to start my applications, and a lot of the time I have to type almost the full program name to get to the app I actually use.
What’s the easiest way to hide a large number of programs from the menus, which is also easily reversible?My first idea was renaming the .desktop files in /usr/share/applications to .hidden
But they seem to be recreated automatically.Another idea was to copy .desktop files from /usr/share/applications to ~/.local/share/applications and then do:
printf "\nHidden=True" | tee -a ~/.local/share/applications/*.desktop
But I tried to add this manually with one test file and it didn’t seem to have any effect.
Is there a config file somewhere that specifies in which paths .desktop files are parsed?Or is there a better way?
Thanks a lot, and happy slacking!
[Solved] Slackware comes with kmenuedit which can be accessed by right-clicking the app menu.
I’d just uninstall it.
Came here to say exactly this.
Thanks for the reply, but if I wanted to go with that option, I wouldn’t need to ask.
Slackware works best if you keep the default installation intact and just add to it what you need.That can be problematic because if OP installed via graphical install, it will uninstall the entire desktop, as likely the way the meta packages are structured - apt will think KDE Plasma was just installed as a dependency of KDE games or something and remove it alongside.
OP if you just want to hide it, perhaps deleting the .desktop files will do the trick?
There is no apt and no meta-packages. This is Slackware, not Debian.
But it’s similar, uninstalling default software increases the effort needed for system maintenance.
And I wrote in my post that deleting the .desktop files (or renaming them to .hidden, which has the same effect) didn’t stick.Ah didn’t realize you were actually using slackware, my bad, I thought you were just referencing the slackware approach of a full install
Also I would not assume that deleting them and renaming them has the same effect. Unless you’ve seen the source code and can confirm how it works, the pattern matching for files could be something that looks for anything in that folder, or anything containing .desktop (if you renamed them like .desktop -> .desktop.hidden)
Based on a quick Google search it’s a bug in KDE, and even uninstalling the application does not always remove it from the menu.
Also add
NoDisplay=true
https://specifications.freedesktop.org/desktop-entry-spec/latest/recognized-keys.html
Maybe
chmod 000
the .desktop files works.Wouldn’t this disable the application for any service or program that looksup the .desktop file from /usr/share/applications/ directory?
Can you try
true
instead ofTrue
?https://specifications.freedesktop.org/desktop-entry-spec/latest/value-types.html
Values of type boolean must either be the string true or false.
@superkret copy the .desktop file to your users .local/share/applications and edit it to have NoDisplay=true
Piggybacking onto this, MenuLibre also works and the “hide from menus” setting does exactly that if a GUI is preferable. I used it to hide a bunch of VSTs a while back.