38
submitted 3 months ago* (last edited 3 months ago) by superkret@feddit.org to c/linux@lemmy.ml

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.

top 12 comments
sorted by: hot top controversial new old
[-] TheLugal@lemmy.world 16 points 3 months ago
[-] superkret@feddit.org 12 points 3 months ago

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.

[-] LainTrain@lemmy.dbzer0.com 2 points 3 months ago

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?

[-] superkret@feddit.org 4 points 3 months ago* (last edited 3 months ago)

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.

[-] LainTrain@lemmy.dbzer0.com 2 points 3 months ago* (last edited 3 months ago)

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.

[-] Dirk@lemmy.ml 2 points 3 months ago

Came here to say exactly this.

[-] angrylinus@mas.to 13 points 3 months ago

@superkret copy the .desktop file to your users .local/share/applications and edit it to have NoDisplay=true

[-] hollyberries@programming.dev 5 points 3 months ago

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.

[-] markstos@lemmy.world 8 points 3 months ago
[-] nmtake@lemm.ee 5 points 3 months ago

Can you try true instead of True?

https://specifications.freedesktop.org/desktop-entry-spec/latest/value-types.html

Values of type boolean must either be the string true or false.

[-] MsFlammkuchen 3 points 3 months ago

Maybe chmod 000 the .desktop files works.

[-] thingsiplay@beehaw.org 1 points 3 months ago

Wouldn't this disable the application for any service or program that looksup the .desktop file from /usr/share/applications/ directory?

this post was submitted on 13 Aug 2024
38 points (100.0% liked)

Linux

48358 readers
549 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS