Bug 1826330 Comment 1 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is **missing** StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons: That's a **release blocker** for Wayland on Snap.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is **missing** StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons: That's a **release blocker** for Wayland on Snap.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is **missing** StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons: That's a **release blocker** for Wayland on Snap.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if it's started via terminal, but correct ones when started from start menu.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct ones when started from start menu.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct ones if started from start menu.
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct ones if started from start menu. Start menu entries for Stable and Nightly are both named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct ones if started from start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct ones if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap:
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct Gnome+KDE taskbar icons and KDE window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct Gnome+KDE taskbar icons and KDE window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong taskbar icons if started via terminal, but correct Gnome+KDE taskbar icons and correct KDE window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has wrong KDE Wayland taskbar icons if started via terminal, but correct KDE Wayland taskbar icons and correct KDE window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar+window icons if started via terminal**, but correct KDE Wayland taskbar+ window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar+window icons if started via terminal**, but correct KDE Wayland taskbar+window icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has correct KDE Wayland window icons if started via main menu, but wrong ones if started via terminal.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal**, but correct ones if started via main menu.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=MOZ_APP_REMOTINGNAME, therefore a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons are wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal**, but correct ones if started via main menu.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no wrong main window icon is visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>"): https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal**, but correct ones if started via main menu.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal**, but correct ones if started via main menu.
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak (demands to have) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) is missing StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ instead of +, the notation for `snap run` (firefox_userdefinedaliasname), but not of the .desktop file (firefox+userdefinedaliasname_firefox).
  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ (for `snap run firefox_userdefinedaliasname`) instead of + (for `firefox+userdefinedaliasname_firefox`.desktop).

 instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ (for `snap run firefox_userdefinedaliasname`) instead of + (for `firefox+userdefinedaliasname_firefox`.desktop).

      instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ (for `snap run firefox_userdefinedaliasname`) instead of + (for `firefox+userdefinedaliasname_firefox`.desktop).

    instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ (for `snap run firefox_userdefinedaliasname`) instead of + (for `firefox+userdefinedaliasname_firefox`.desktop).

  instead of MOZ_APP_REMOTINGNAME as remotingname for dbus/g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).
MOZ_APP_REMOTINGNAME is either firefox, firefox-beta, firefox-dev, firefox-nightly, firefox-esr.

bug 1751153 - Correct Gnome+KDE taskbar icons:
* Flatpak's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-flatpak/org.mozilla.firefox.desktop) has StartupWMClass=firefox, a correct KDE Wayland taskbar icon if started via terminal&via start menu.
* Snap's [desktop file](https://searchfox.org/mozilla-central/source/taskcluster/docker/firefox-snap/firefox.desktop) doesn't have StartupWMClass=MOZ_APP_REMOTINGNAME, it has **wrong KDE Wayland taskbar icons if started via terminal**, but correct KDE Wayland taskbar icons if started via start menu. Start menu entries for Nightly are unexpectedly named "Firefox Web Browser".
* bug 1831896 would extend the script from bug 1824327 to generate Fluent-localized .desktop files for Snap+Flatpak as well.

---

This bug - Correct KDE Wayland window icons if MOZ_ENABLE_WAYLAND=1:
* Firefox uses tabs-in-titlebar by default on KDE (=no possibly wrong main window icon visible), about/downloads/bookmark window icons may be wrong.
* Gnome doesn't have window icons.
* <appid>.desktop must match g_set_prgname("<appid>") according to https://honk.sigxcpu.org/con/GTK__and_the_application_id.html

appid example:
desktop file is: /usr/share/applications/org.kde.discover.desktop
appid is: `$ WAYLAND_DEBUG=1 plasma-discover |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
[ 330637.227]  -> xdg_toplevel@29.set_app_id("org.kde.discover")`

Flatpak and Snap need special remotingnames:
* Flatpak has **wrong KDE Wayland window icons if started via terminal** or **via main menu**.
Flatpak has (requires) an org.mozilla.firefox.desktop file, IIUC it therefore needs to use org.mozilla.MOZ_APP_REMOTINGNAME instead of MOZ_APP_REMOTINGNAME as remotingname for g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well or be removed.

  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/flatpak/exports/share/applications/*firefox*
  /var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 flatpak run org.mozilla.firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [ 993077.554]  -> xdg_toplevel@43.set_app_id("firefox")
  [ 995694.442]  -> xdg_toplevel@75.set_app_id("firefox")
  [1022515.183]  -> xdg_toplevel@117.set_app_id("firefox")
  ```
* Snap has **wrong KDE Wayland window icons if started via terminal** or **via main menu**. 
  The real desktop file is (re)named firefox_firefox.desktop or firefox+userdefinedaliasname_firefox.desktop.
  It doesn't seem to matter how it's named inside the snap package.
  Format is packagename_appname.desktop or packagename+userdefinedaliasname_appname.desktop.
  Firefox therefore needs to use
  * <packagename>_<appname> (firefox_firefox)
  * or if SNAP_INSTANCE_KEY env var is not empty: <packagename>+<SNAP_INSTANCE_KEY>_<appname> (firefox+userdefinedaliasname_firefox)
    * Existing [GetSnapInstanceName()](https://searchfox.org/mozilla-central/rev/0d9d9d644b06d039e119242f6f12af21d763e4eb/widget/gtk/WidgetUtilsGtk.cpp#173) is not useful because SNAP_INSTANCE_NAME contains _ (for `snap run firefox_userdefinedaliasname`) instead of + (for `firefox+userdefinedaliasname_firefox`.desktop).

  instead of MOZ_APP_REMOTINGNAME as remotingname for g_set_prgname to have correct KDE Wayland window icons. StartupWMClass would then need to be changed as well (which might not be possible) or be removed.

  If appname would become firefox-nightly, then Nightly could only be started with `.firefox-nightly` suffix:
  * `snap run firefox.firefox-nightly` starts firefox_firefox-nightly.desktop
  * `snap run firefox_userdefinedaliasname.firefox-nightly` starts firefox+userdefinedaliasname_firefox-nightly.desktop

  If appname would become nightly, then Nightly could only be started with `.nightly` suffix:
  * `snap run firefox.nightly` starts firefox_nightly.desktop
  * `snap run firefox_userdefinedaliasname.nightly` starts firefox+userdefinedaliasname_nightly.desktop

  If appname stays `firefox` for the firefox-nightly snap, the shorter command without `.<appname>` can be used:
  * relevant: `snap run firefox` starts firefox_firefox.desktop
  * irrelevant: `snap run firefox.firefox`
  * relevant: `snap run firefox_userdefinedaliasname` starts firefox+userdefinedaliasname_firefox.desktop
  * irrelevant: `snap run firefox_userdefinedaliasname.firefox`
  

  https://github.com/canonical/firefox-snap/blob/4eec4293c2a08cadd525fe19d82a7092cc265919/snapcraft.yaml#L27
  https://snapcraft.io/docs/snapcraft-yaml-reference
  https://snapcraft.io/docs/commands-and-aliases
  https://snapcraft.io/docs/environment-variables
  https://snapcraft.io/docs/parallel-installs


  ```
  $ echo $XDG_DATA_DIRS
  /home/darkspirit/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [2140293,649]  -> xdg_toplevel@43.set_app_id("firefox")
  $ sudo snap set system experimental.parallel-instances=true
  $ sudo snap install firefox_nightly --edge --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  $ MOZ_ENABLE_WAYLAND=1 WAYLAND_DEBUG=1 snap run firefox_nightly |& grep 'xdg_toplevel@[0-9]\+\.set_app_id'
  [3310669,510]  -> xdg_toplevel@50.set_app_id("firefox-nightly")
  $ sudo snap install firefox_randomname --edge --unaliased
  $ sudo snap install firefox_second --unaliased
  $ sudo snap install firefox_beata --beta --unaliased
  $ ls /var/lib/snapd/desktop/applications/*firefox*
  /var/lib/snapd/desktop/applications/firefox+beata_firefox.desktop    /var/lib/snapd/desktop/applications/firefox+randomname_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox_firefox.desktop          /var/lib/snapd/desktop/applications/firefox+second_firefox.desktop
  /var/lib/snapd/desktop/applications/firefox+nightly_firefox.desktop
  ```

* unaffected: Mozilla's debian package (bug 1824327) has correct Gnome+KDE Wayland taskbar icons (StartupWMClass=MOZ_APP_REMOTINGNAME) and correct KDE Wayland window icons (MOZ_APP_REMOTINGNAME.desktop with g_set_prgname(MOZ_APP_REMOTINGNAME)).

Back to Bug 1826330 Comment 1