익명 00:13

GNOME app grid duplicating icons endlessly (Steam, custom .desktop files) — su...

GNOME app grid duplicating icons endlessly (Steam, custom .desktop files) — survives full OS reinstall — Framework 13 AMD, Ubuntu 26.04

System info:

  • Framework 13 AMD (Ryzen), Wayland session (GNOME on Ubuntu 26.04 "resolute")
  • Fresh Ubuntu install, ~1 week old
  • Issue previously occurred on Ubuntu 24.04 on the same laptop and was "fixed" only by a full OS reinstall — it has now returned identically on the fresh install

Symptoms:

  • Icons in the GNOME app grid duplicate themselves repeatedly (seen 20-40+ copies of the same app)
  • Confirmed NOT caused by duplicate .desktop files on disk — checked both ~/.local/share/applications/ and /usr/share/applications/, only one file exists per affected app
  • Happens specifically after (re)installing/launching certain apps — most recently reproduced by installing Steam via the official .deb (steam-installer package), which caused ~24 duplicate Steam icons to appear immediately after first launch
  • Previous occurrence (on the old install) affected a custom GNOME extension I built, plus two other apps installed via .desktop files in ~/.local/share/applications/

What I've tried:

  • Confirmed dpkg --print-foreign-architectures / apt install completed with no errors
  • Checked for duplicate .desktop files (none found)
  • About to try: dconf reset -f /org/gnome/shell/app-picker-layout (have not yet confirmed if this fixes it or just temporarily clears it)

Question: Is there a known root cause for org/gnome/shell/app-picker-layout duplicating entries on re-registration of an app, rather than just deduplicating? And is there a way to prevent this from recurring, since a full OS wipe did NOT permanently fix it (it returned after restoring my home folder from backup) — I suspect the corrupted dconf database itself got carried over in the restore rather than being regenerated fresh. Is app-picker-layout stored anywhere outside ~/.config/dconf/user that I should be excluding from backups?

Any pointers to the relevant GNOME Shell bug tracker issue (if this is already known) would also help.



Top Answer/Comment:

Found the actual root cause after a lot of dead ends (dconf, cache, extensions, multiple gnome-shell processes — all ruled out one by one).

The real cause: a self-referencing symlink inside the applications folder itself:

~/.local/share/applications/applications -> ~/.local/share/applications/

This caused GLib/Gio's recursive directory scan (used internally by GNOME Shell to build the app grid) to loop into itself. Each level of the loop generated a duplicate AppInfo entry with an ever-longer prefixed ID (applications-applications-applications-...-name.desktop), capping out around 30-40 duplicates per affected app before GLib's recursion limit kicked in.

You can confirm this is your issue by checking the actual app IDs GNOME sees (not just counting icons):

python3 -c "
import gi; gi.require_version('Gio','2.0')
from gi.repository import Gio
for a in Gio.AppInfo.get_all():
    if a.get_id().count('applications-') > 1:
        print(a.get_id())
"

If you see IDs with "applications-" repeated multiple times, you have the same bug. Fix:

find ~/.local/share/applications -maxdepth 1 -type l -ls
# find the self-referencing symlink, then:
rm ~/.local/share/applications/applications

Log out and back in (Wayland doesn't support live gnome-shell restart, so this step is required) and the duplicates should be gone.

For reference, in my case this symlink survived a full OS reinstall because it had been included in a home-folder backup and got restored as-is onto the fresh install — so if you're restoring from an old backup, it's worth checking for this before copying everything over.

Hope this saves someone else the multi-hour debugging session.

상단 광고의 [X] 버튼을 누르면 내용이 보입니다