← Back to team overview

debcrafters-packages team mailing list archive

[Bug 2128350] Re: Some desktop snaps are no longer visible in the apps menu

 

** Merge proposal linked:
   https://code.launchpad.net/~aleasto/ubuntu/+source/malcontent/+git/malcontent/+merge/494916

** Merge proposal linked:
   https://code.launchpad.net/~aleasto/ubuntu/+source/malcontent/+git/malcontent/+merge/494917

-- 
You received this bug notification because you are a member of
Debcrafters packages, which is subscribed to malcontent in Ubuntu.
https://bugs.launchpad.net/bugs/2128350

Title:
  Some desktop snaps are no longer visible in the apps menu

Status in malcontent package in Ubuntu:
  Fix Released
Status in malcontent source package in Jammy:
  In Progress
Status in malcontent source package in Noble:
  In Progress
Status in malcontent source package in Plucky:
  Fix Committed
Status in malcontent source package in Questing:
  Fix Committed

Bug description:
  [ Impact ]

  Malcontent is a parental control mechanism implemented in GNOME Shell.
  It supports hiding applications from the application menu.

  Some desktop snaps like telegram-desktop are no longer visible in GNOME Shell when libmalcontent is installed, even without any filters applied. Which snaps are hidden depends on the numbers of command-line arguments they specify in the Exec line. If it's more than 2, then the snap will be hidden.
  For example, telegram-desktop uses:

  Exec=/snap/bin/telegram-desktop -- %U

  Ubuntu ships a patch in malcontent to allow filtering non-flatpak applications too.
  This patch assumed that a desktop snap Exec= line would always follow the format `Exec=env BAMF_DESKTOP_FILE_HINT=foo.desktop /snap/bin/foo arg1 arg2`, so it would interpret the third argument as the absolute binary path.

  That was changed in snapd version 2.72 to remove the
  BAMF_DESKTOP_FILE_HINT environment variable, so the Exec line now
  follows the format `Exec=/snap/bin/foo arg1 arg2`. The third argument
  is no longer the binary's absolute path, and things break.

  Malcontent needs to be adapted to not assume that the snap binary is
  always the third argument.

  [ Test Plan ]

  1. Install the `malcontent` deb package
     -> this is pre-installed on some OEM installs.
  2. Log-out, log-in again.
  3. Install snapd 2.72 or newer, available from the candidate channel:
     `sudo snap refresh snapd --candidate`
  4. Install the `telegram-desktop` snap
  5. Open the GNOME Shell application launcher
  6. Search for Telegram
  7. Verify that the Telegram app is listed.

  [ Where problems could occur ]

  Problems would manifest with applications being incorrectly filtered
  out or not filtered out.

  The patch should make sure that it is future-proof by not assuming the
  position of the binary path in the command-line a-priori.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/malcontent/+bug/2128350/+subscriptions



References