Skip to content

fix(arch): install the desktop entry under the portal's app id - #945

Closed
rahul05ranjan wants to merge 2 commits into
Louis-CFM:mainfrom
rahul05ranjan:fix/arch-desktop-app-id
Closed

rahul05ranjan wants to merge 2 commits into
Louis-CFM:mainfrom
rahul05ranjan:fix/arch-desktop-app-id

Conversation

@rahul05ranjan

Copy link
Copy Markdown
Contributor

Fixes #804.

What was wrong

The Arch PKGBUILD installs the desktop entry as /usr/share/applications/coucou.desktop, but Coucou tells the GlobalShortcuts portal its Tauri identifier, fr.louisraille.coucou (windows/src-tauri/src/portal.rs:45):

const APP_ID: &str = "fr.louisraille.coucou";

The portal resolves app info for an id through <app-id>.desktop under /usr/share/applications, so it looks for fr.louisraille.coucou.desktop, does not find it, and the session is rejected:

shortcuts portal: no app registry (... Could not register app ID: App info not found for 'fr.louisraille.coucou')
shortcuts portal: the desktop portal didn't take them (... An app id is required)

The fix

One line in linux/arch/PKGBUILD: install the entry under the identifier the app reports:

-  install -Dm644 linux/arch/coucou.desktop "$pkgdir/usr/share/applications/coucou.desktop"
+  install -Dm644 linux/arch/coucou.desktop "$pkgdir/usr/share/applications/fr.louisraille.coucou.desktop"

The file's contents are unchanged, so menus and launchers keep working as before (Name=Coucou, Icon=coucou, Exec=coucou); only the lookup name the portal needs changes.

Verification

I could not run makepkg or a desktop portal on this machine (no Arch here), so:

  • Read windows/src-tauri/src/portal.rs on main: the app id passed to the portal session is exactly fr.louisraille.coucou (line 45, used at line 374 to name the session). The installed file name on main is exactly coucou.desktop, so the mismatch is real on HEAD.
  • Parsed linux/arch/coucou.desktop with Python's configparser after the change: still a valid Desktop Entry (Type=Application, Exec=coucou, Icon=coucou) — the change is to the install destination only.
  • The reporter of [Linux/Arch] Global shortcuts fail: PKGBUILD installs coucou.desktop but portal needs app-id fr.louisraille.coucou #804 confirmed on real hardware (EndeavourOS, Hyprland, xdg-desktop-portal-hyprland) that installing the identical desktop file named fr.louisraille.coucou.desktop makes the portal resolve the app id and the log switch to shortcuts: registered with the desktop portal.

rahul05ranjan and others added 2 commits October 27, 2026 17:17
Install and uninstall removed a whole Claude Code hook group when any
command in it mentioned coucou or NotchBuddy, so a user hook like
~/dev/coucou/scripts/lint.sh was deleted. Both paths now use the Gemini
path's removeNbHookEntries, which removes only nb-hook commands and
drops a group only when every entry in it was ours.

Fixes Louis-CFM#854

Co-authored-by: rahul05ranjan <11793455+rahul05ranjan@users.noreply.github.com>
The GlobalShortcuts portal resolves app info through
<app-id>.desktop, and the Tauri identifier Coucou reports is
fr.louisraille.coucou (windows/src-tauri/src/portal.rs). The PKGBUILD
installed the entry as coucou.desktop, so the portal could not
register the app id and global shortcuts failed on Arch installs.

Fixes Louis-CFM#804

Co-authored-by: rahul05ranjan <11793455+rahul05ranjan@users.noreply.github.com>
@rahul05ranjan

Copy link
Copy Markdown
Contributor Author

Closing in favor of a clean single-commit PR: this branch was stacked on the branch of #944, so the diff showed its files too. Reopening as #947 with only the PKGBUILD change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Linux/Arch] Global shortcuts fail: PKGBUILD installs coucou.desktop but portal needs app-id fr.louisraille.coucou

1 participant