Subject: Re: bug#77496: [PATCH] Add 'ns-app-badge' to set macOS / GNUstep icon badge

From: Björn Bidar <[email-masked]>
Date: Wed, 09 Apr 2025 00:50:26 +0300

Ship Mints <[email-masked]> writes:

> On Fri, Apr 4, 2025 at 7:44 AM Eli Zaretskii <[email-masked]> wrote:
>
>> > From: Ship Mints <[email-masked]>
>> > Date: Fri, 4 Apr 2025 07:37:57 -0400
>> > Cc: [email-masked]
>> >
>> >  P.S. All this doesn't change the fact that we can only install this
>> >  feature when it can be made available on free systems.
>> >
>> > This feature exists in GNUstep.  Is this not sufficiently free?
>>
>> I mean the underlying OS.
>>
>
> GNUstep on Linux would do.
>
>> If you think we really need complete parity with Linux desktop systems
>> beyond GNUstep, based on some
>> > research this morning, we may be able to leverage dbus messages for
>> desktops that support for "count"
>> > (numeric only, sheesh) / "count-visible".  This functionality appears
>> not to be tied to the running process as on
>> > macOS/GNUstep but to a "URL" like "application://{appname}.desktop"
>> where I guess appname would be
>> > emacs or Emacs, I dunno yet how this really works when there are more
>> than one running copies of an app
>> > process.  I'll experiment and see if I can tease this out.
>> >
>> > If this seems easy and you're 100% adamant that GNUstep is
>> insufficiently free, I can try to craft a more
>> > generic API that supports numeric counts for Linux desktop shells, and
>> text labels for macOS/GNUstep.
>>
>> I'd be surprised if X and/or GTK don't have a comparable feature.  So
>> yes, I think we should have something similar on GNU/Linux.
>>
>
> Seems not.  Seems to be a feature of desktop shells.
>
> Not getting any love from trying 'gdbus' to force an app badge.  I'm surely
> just an ignorant boob with dbus.
>
> For anyone interested in helping out, this is the hack I'm trying, which,
> if it worked, we'd model in Emacs invoking dbus directly vs. via command
> line.
>

Which desktop environment do you use? It seems that at least KDE Plasma
and Unity support this API. I assume that also applies to GNOME Shell at
least under Ubuntu.