feat: initial qobuz-qt source

Lightweight Qt6 desktop client for Qobuz with a Rust audio backend
(Symphonia/CPAL via staticlib FFI). Mirrors the spotify-qt layout:
toolbar with playback controls, library/context docks on the left,
tabbed search side panel on the right, queue panel, now-playing dock.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
joren
2026-03-24 00:41:04 +01:00
parent 35ae649fc9
commit cb2323bc32
85 changed files with 4484 additions and 249 deletions

66
res.qrc
View File

@@ -1,6 +1,68 @@
<RCC>
<qresource prefix="/">
<!-- Icons will be served from the system theme; this is a fallback stub. -->
<!-- Add .svg files to res/icons/ and list them here if needed. -->
<!-- Icons from spotify-qt (dark variant) -->
<file>res/icons/application-exit.svg</file>
<file>res/icons/application-menu.svg</file>
<file>res/icons/audio-volume-high.svg</file>
<file>res/icons/audio-volume-low.svg</file>
<file>res/icons/audio-volume-medium.svg</file>
<file>res/icons/configure.svg</file>
<file>res/icons/data-error.svg</file>
<file>res/icons/data-information.svg</file>
<file>res/icons/data-warning.svg</file>
<file>res/icons/description.svg</file>
<file>res/icons/dialog-cancel.svg</file>
<file>res/icons/dialog-ok.svg</file>
<file>res/icons/document-edit.svg</file>
<file>res/icons/document-preview.svg</file>
<file>res/icons/document-properties.svg</file>
<file>res/icons/document-save.svg</file>
<file>res/icons/document-share.svg</file>
<file>res/icons/download.svg</file>
<file>res/icons/draw-brush.svg</file>
<file>res/icons/draw-donut.svg</file>
<file>res/icons/edit-copy.svg</file>
<file>res/icons/edit-find.svg</file>
<file>res/icons/edit-undo.svg</file>
<file>res/icons/exception.svg</file>
<file>res/icons/folder-temp.svg</file>
<file>res/icons/folder-txt.svg</file>
<file>res/icons/go-down.svg</file>
<file>res/icons/go-previous.svg</file>
<file>res/icons/go-up.svg</file>
<file>res/icons/headphones.svg</file>
<file>res/icons/help-about.svg</file>
<file>res/icons/hint.svg</file>
<file>res/icons/im-user-away.svg</file>
<file>res/icons/list-add.svg</file>
<file>res/icons/list-remove.svg</file>
<file>res/icons/media-optical-audio.svg</file>
<file>res/icons/media-playback-pause.svg</file>
<file>res/icons/media-playback-start.svg</file>
<file>res/icons/media-playlist-append.svg</file>
<file>res/icons/media-playlist-repeat-song.svg</file>
<file>res/icons/media-playlist-repeat.svg</file>
<file>res/icons/media-playlist-shuffle.svg</file>
<file>res/icons/media-skip-backward.svg</file>
<file>res/icons/media-skip-forward.svg</file>
<file>res/icons/media-track-show-active.svg</file>
<file>res/icons/non-starred-symbolic.svg</file>
<file>res/icons/speaker.svg</file>
<file>res/icons/starred-symbolic.svg</file>
<file>res/icons/view-calendar.svg</file>
<file>res/icons/view-media-album-cover.svg</file>
<file>res/icons/view-media-artist.svg</file>
<file>res/icons/view-media-lyrics.svg</file>
<file>res/icons/view-media-playlist.svg</file>
<file>res/icons/view-media-track.svg</file>
<file>res/icons/view-refresh.svg</file>
<file>res/icons/view-sort-ascending.svg</file>
<file>res/icons/view-statistics.svg</file>
<file>res/icons/visibility.svg</file>
<file>res/icons/window-close.svg</file>
<file>res/icons/window-maximize.svg</file>
<file>res/icons/window-minimize.svg</file>
<file>res/icons/window-restore.svg</file>
<file>res/icons/window.svg</file>
</qresource>
</RCC>