NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.45k stars 13.65k forks source link

Desktop menu entries are missing from many desktop applications #111467

Closed danwdart closed 5 months ago

danwdart commented 3 years ago

Describe the bug Many desktop applications don't come with .desktop files:

To Reproduce Steps to reproduce the behavior:

  1. Install either of the given applications
  2. Search in the menu for their shortcuts
  3. Observe they are missing

Expected behavior Desktop menus for these applications are missing.

Screenshots Negative screenshots don't make sense

Additional context Installed through configuration.nix, if that makes any difference.

Notify maintainers Unsure who'd be the best person to speak to about this.

Metadata

Maintainer information:

Unsure about that. At least packages above and possibly more.

Thank you!

fabaff commented 3 years ago

The upstream projects should provide .desktop files to populate the menus of the various Desktop environments. It would be possible for the maintainer of the affected packages to add an entry according to the Desktop Menu Specification manually but that's a kind of last resort because other distributions would not benefit.

I check that at least virt-manager, gimp and polyphone have .desktop files in their repos. I guess they were not added because there was no demand so far.

symphorien commented 3 years ago

at least gimp does have a desktop file on my system /nix/store/4a0d7inzfq8vc09lqbmp5px9n6czvs7y-gimp-2.10.20/share/applications/gimp.desktop

danwdart commented 3 years ago

Yes, I noticed virt-manager already has one, as does gimp, virt-viewer adds a %u and many others have desktop files on other distros already, so I guess they could be custom or repackaged?

symphorien commented 3 years ago

My point is: the nix package for gimp has a desktop file, so the problem is probably that you desktop environment fails to display it. See for example https://github.com/NixOS/nixpkgs/issues/40915

danwdart commented 3 years ago

Sorry, let me clarify: I removed gimp from the list because I just failed to find it. The rest are definitely not there though.

symphorien commented 3 years ago

Ok, then it should be reasonably easy to fix this by yourself. Here is an example where the desktop file is provided by upstream but not installed: https://github.com/NixOS/nixpkgs/pull/100294 Here is an example where the desktop file is created from scratch: https://github.com/NixOS/nixpkgs/pull/86913

stale[bot] commented 3 years ago

I marked this as stale due to inactivity. → More info

kip93 commented 1 year ago

Just having a quick look through a few of these, at least some seem to already include a .desktop file. I'll try to take those available and expose them properly. Besides that, I think we could also just create .Desktop entries for those that do not include them. If they decide to add them upstream in the future we can delete our own and use those.

I can try and create these files on some of the upstream projects, but some might be easier than others (e.g., for bristol doesn't have the entry, and while it seems to be licensed GPL I can't even find the source code on their website, let alone how to contribute to it), and it could take a while to get them merged, so should we just limit ourselves and twiddle our thumbs waiting?

drupol commented 1 year ago

Just added desktop item for ioquake3 and openarena in #250105 and #250100

Stunkymonkey commented 7 months ago

@danwdart I do not see any other distro shipping a desktop item for soundmodem. How important is it? I feel, we can drop it from the list.

The rest of the applications is merged or in progress.

danwdart commented 7 months ago

Thanks for addressing this. I personally use it, and think I've seen it, but it's likely one of those things that might need root access or serial/if device capability. I personally think there's value in having soundmodemconfig as a desktop entry. Not sure how many agree.

Stunkymonkey commented 7 months ago

for root-permissions we could use something like pkexec?

or maybe we have security.sudo.extraRules for this?

both do not feel perfect.

Stunkymonkey commented 5 months ago

all tasks are now marked as resolved. I guess we can close it.