# Curated Apps catalog: host fixtures Evidence class: **host** (x86_64 compile of the production launcher sources and GLib desktop provider against isolated XDG directories). No board, panel, touch or cross-build is claimed. Recorded 2026-09-28T13:54Z on branch `close/shell-umbrella`. Change: `the-launcher-explains-app-actions`, tasks 1.1 and 1.2. ## What changed - `nix/touch-launcher/catalog.c` holds a small curated policy table keyed by desktop-entry ID. `footclient.desktop` and `foot-server.desktop` are suppressed. `foot.desktop` ("Plain terminal") and `htop.desktop` ("Process viewer") duplicate the built-in Terminal and Monitor rows, so they are demoted after every other entry. Unknown entries are retained under their own name. Their description comes from `Comment=`, then `GenericName=`, then "Installed application". GLib still does discovery, `should_show` and launching. The launcher does not parse `Exec`. - `nix/touch-launcher/touch-launcher.c` renders the curated label and hint instead of the fixed "Installed application" text. After a failed launch it shows `Could not open