From 287ac59e7f5f51f4cd2f161e772a70719e7dedce Mon Sep 17 00:00:00 2001 From: vicrodh <103399283+vicrodh@users.noreply.github.com> Date: Fri, 16 Jan 2026 17:10:42 -0600 Subject: [PATCH] feat: register qbz:// URI scheme for OAuth callbacks Add URI scheme handler registration for OAuth flow implementation: - Register x-scheme-handler/qbz in .desktop files - Add %u parameter to Exec for URL handling - Add OpenURI portal permission in Flatpak manifest This enables OAuth PKCE flows for Spotify and other providers to redirect back to the application after browser authentication. Files modified: - packaging/arch/qbz.desktop - packaging/aur/qbz.desktop - packaging/flatpak/com.blitzkriegfc.qbz.desktop - packaging/flatpak/com.blitzkriegfc.qbz.yml --- packaging/arch/qbz.desktop | 3 ++- packaging/aur/qbz.desktop | 3 ++- packaging/flatpak/com.blitzkriegfc.qbz.desktop | 3 ++- packaging/flatpak/com.blitzkriegfc.qbz.yml | 2 ++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packaging/arch/qbz.desktop b/packaging/arch/qbz.desktop index 9b1b4330f..c12d37cc8 100644 --- a/packaging/arch/qbz.desktop +++ b/packaging/arch/qbz.desktop @@ -1,8 +1,9 @@ [Desktop Entry] Name=QBZ -Exec=qbz +Exec=qbz %u Type=Application Icon=qbz Categories=Audio;Music;Player; Terminal=false StartupWMClass=QBZ +MimeType=x-scheme-handler/qbz; diff --git a/packaging/aur/qbz.desktop b/packaging/aur/qbz.desktop index 26c00b58f..cea41f522 100644 --- a/packaging/aur/qbz.desktop +++ b/packaging/aur/qbz.desktop @@ -1,10 +1,11 @@ [Desktop Entry] Name=QBZ Comment=Native Qobuz client with hi-res audio support -Exec=qbz +Exec=qbz %u Type=Application Icon=qbz Categories=Audio;Music;Player;AudioVideo; Terminal=false StartupWMClass=qbz-nix Keywords=music;audio;qobuz;hifi;streaming; +MimeType=x-scheme-handler/qbz; diff --git a/packaging/flatpak/com.blitzkriegfc.qbz.desktop b/packaging/flatpak/com.blitzkriegfc.qbz.desktop index a120a6bb3..ed6f7537c 100644 --- a/packaging/flatpak/com.blitzkriegfc.qbz.desktop +++ b/packaging/flatpak/com.blitzkriegfc.qbz.desktop @@ -1,8 +1,9 @@ [Desktop Entry] Name=QBZ -Exec=qbz +Exec=qbz %u Type=Application Icon=com.blitzkriegfc.qbz Categories=Audio;Music;Player; Terminal=false StartupWMClass=QBZ +MimeType=x-scheme-handler/qbz; diff --git a/packaging/flatpak/com.blitzkriegfc.qbz.yml b/packaging/flatpak/com.blitzkriegfc.qbz.yml index e0214c131..c52ca612f 100644 --- a/packaging/flatpak/com.blitzkriegfc.qbz.yml +++ b/packaging/flatpak/com.blitzkriegfc.qbz.yml @@ -26,6 +26,8 @@ finish-args: - --talk-name=org.mpris.MediaPlayer2.* # Own MPRIS name to register as media player (not just talk to others) - --own-name=org.mpris.MediaPlayer2.qbz_nix + # OAuth browser authentication + - --talk-name=org.freedesktop.portal.OpenURI modules: # intltool required for libdbusmenu