Skip to content

System Requirements

vicrodh edited this page Jul 24, 2026 · 5 revisions

System Requirements

Supported Platforms

Platform Architecture Status
Linux x86_64 (Intel/AMD 64-bit) Fully supported
Linux aarch64 (ARM 64-bit) Supported
macOS Apple Silicon (aarch64) Fully supported
macOS Intel (x86_64) Supported ¹

¹ Older Intel Macs may feel slow by default because of the hardware. Turning off the heavier effects in Settings > Appearance (the dynamic album-art background and shader visualizers) and picking a lighter theme recovers most of the smoothness.

QBZ is a Linux-first application — the whole audio design is built around the Linux stack (ALSA, PipeWire, PulseAudio, JACK). Since 2.0 it is a single native Rust process with a Slint UI (no webview, no browser engine).

macOS is a fully supported platform on Apple Silicon and supported on Intel, maintained by @afonsojramos. PipeWire, ALSA Direct, casting and low-level device control are Linux-only; macOS plays through its own CoreAudio backend. On recent macOS the app is blocked at first launch by Gatekeeper, so you have to take it out of quarantine once (see the Installation macOS steps). There is no Windows build yet.

Qobuz Account

You need an active Qobuz subscription to use QBZ. Any plan works, but:

Plan Max Quality
Studio / Sublime Hi-Res 24-bit / 192 kHz
Standard CD Quality 16-bit / 44.1 kHz

If you care about bit-perfect Hi-Res playback (the main reason to use QBZ), a Studio or Sublime plan is recommended.

Audio System

QBZ supports the following audio backends:

Backend Description Best For
PipeWire Modern Linux audio server (default) Most users, general use
ALSA Direct kernel-level audio Users without PipeWire
ALSA Direct (hw:) Bypass all mixers, direct hardware access Bit-perfect / exclusive mode
PulseAudio Legacy audio server Older systems
JACK Pro-audio routing (QBZ appears as a JACK client) Studio setups (not bit-perfect — the JACK graph runs at one fixed rate)

Recommended: PipeWire is the default on most modern Linux distributions (Fedora, Ubuntu 22.10+, Arch, etc.) and works well out of the box.

System Dependencies

QBZ is a native Slint binary — there is no WebKitGTK, GTK, GStreamer or Tauri requirement anymore. The linked-in libraries are small and already present on virtually every desktop system.

Required (linked)

  • ALSA (libasound2) — audio
  • fontconfig and freetype — text rendering
  • libpng, bzip2 (libbz2), expat, zlib — asset/decompression support

Runtime (loaded on demand)

The Wayland / X11 / GL / D-Bus stack is loaded at runtime by the windowing and GPU layers. Missing pieces degrade gracefully (e.g. X11 fallback) rather than blocking startup:

  • Wayland (libwayland-client) and/or X11 (libxcb)
  • libxkbcommon — keyboard input
  • libEGL / libGL — GPU rendering (wgpu / femtovg)
  • libdbus — MPRIS, tray, notifications

Audio (at least one)

  • PipeWire + pipewire-audio (recommended)
  • ALSA (alsa-lib, alsa-utils — the latter gives better device names and helps bit-perfect device detection)
  • PulseAudio (pulseaudio)

For Flatpak / Snap Users

If you install QBZ from Flathub or the Snap Store, all dependencies are bundled — you don't need to install anything extra.

For Package Manager Installs

The .deb and .rpm packages already declare these as dependencies, so a normal install pulls them in. You usually don't need to install anything by hand. For the tarball or AppImage, the libraries below are typically present already; install them only if the app complains:

Debian / Ubuntu:

sudo apt install libasound2 libfontconfig1 libfreetype6 libpng16-16 \
  libbz2-1.0 libexpat1 zlib1g libwayland-client0 libxkbcommon0 \
  libegl1 libgl1 libdbus-1-3 libxcb1 pipewire pipewire-audio

Fedora:

sudo dnf install alsa-lib fontconfig freetype libpng bzip2-libs \
  expat zlib libwayland-client libxkbcommon mesa-libEGL mesa-libGL \
  dbus-libs pipewire

Arch Linux:

sudo pacman -S alsa-lib fontconfig freetype2 libpng bzip2 expat zlib \
  wayland libxkbcommon mesa dbus pipewire pipewire-audio

Display Server

QBZ works on both Wayland and X11.

  • On Wayland: runs natively by default
  • On X11: runs natively
  • If you experience graphics issues on Wayland, turn on Force X11 in Settings > Graphics (persisted). To fall back to CPU rendering, launch with QBZ_RENDERER=software qbz.

Rendering

QBZ picks a renderer automatically based on your GPU:

  • wgpu (Vulkan/Metal) — the default on capable GPUs; required for the dynamic album-art background
  • femtovg (GL) — used on weaker GPUs
  • software — CPU fallback

You can override the choice in Settings > Graphics, or force it with QBZ_RENDERER=gpu|gl|software. Hardware acceleration can be toggled off there too.

Hardware

  • Storage: ~100 MB for the app, plus cache space (configurable, default ~1.2 GB total)
  • RAM: ~200-400 MB during playback
  • GPU: Optional hardware acceleration (can be disabled if problematic). A dedicated GPU is recommended if you want the dynamic background enabled.

Headless / daemon

The qbzd daemon needs no display server or GPU at all — just an audio device (a DAC). It's aimed at always-on boxes like a Raspberry Pi. See Headless Daemon.

Clone this wiki locally