Open source for Linux, macOS and Windows

Sidra

An elegant Apple Music desktop client for Linux, macOS and Windows. No frippery, just quality.

Sidra playing Cambodian Space Project in the Catppuccin theme, with the Settings window open
Apple Music's own interface, wrapped directly. Apple keeps it current; Sidra inherits every improvement.

Features

A proper desktop citizen

Most Apple Music desktop clients break the audio, mangle the playback controls, or bury you under a custom UI. Sidra wraps music.apple.com directly, stays out of the way, and lets the audio through untouched. It is wired into each platform's native media subsystem, not bolted on top.

Linux

  • Widevine DRM via CastLabs Electron
  • Wayland and X11 support
  • Bi-directional MPRIS (org.mpris.MediaPlayer2.sidra) over D-Bus, with seeking, queue-preserving Stop, media URL playback and radio song metadata

macOS

  • Full Widevine DRM with EVS production VMP signing
  • Now Playing widget, Dock menu with playback controls, and Dock progress bar
  • App menu (Cmd+Q, About) and native share sheet for the current track

Windows

  • Full Widevine DRM with EVS production VMP signing
  • GSMTC media flyout, taskbar thumbnail toolbar (play/pause, next, previous)
  • Taskbar overlay icon and progress bar showing playback state and position

Application indicator

  • Now Playing: track, artist, album, artwork
  • Playback controls, volume, and mute
  • Start page and last session restore, style switcher, zoom control
  • Close to tray, opt-in: closing the window keeps Sidra running, with Hide and Show entries
  • Share current track (macOS), auto-update status

Open Settings with the gear button beside Back, Forward and Reload, or press Ctrl+, on Linux or Windows and Cmd+, on macOS. The resizable window holds player, start page, style, zoom, close-to-tray, notification, Discord and Last.fm preferences, and changes save immediately. See the Home and Controls wiki page for paths and shortcuts.

Theming

Eight themes, or your own

Choose Style in Settings. Your chosen theme applies to Apple Music, Apple Music Classical and Settings. Pick a theme below and this part of the page takes on its palette, in the dark or light scheme that matches your page theme.

Nord, Rosé Pine, Solarized and Tokyo Night are bundled too. For your own colours, place a custom-theme.json file in Sidra's user data directory, or enable Noctalia's Sidra community template, to add a live-reloading Custom Theme choice. The Custom Themes wiki page has the file paths, colour keys and setup steps.

Why Sidra?

Nothing between the apple and the glass

I wanted an Apple Music client that just worked, so I made Sidra. It wraps music.apple.com directly: Apple's audio pipeline, Apple's auth, Apple's UI. Sidra never creates an AudioContext. Audio flows untouched through Chromium's media stack to the OS. Chromium and the OS can still resample, but Sidra adds no resampling of its own.

  1. Apple Musicmusic.apple.com, Widevine DRM
  2. Chromium media stackDecode and output, nothing added
  3. Your OS audioPipeWire, PulseAudio, CoreAudio, WASAPI
No AudioContext, no DSP, no resampling of its own.

Linux came first

An Apple Music client on Linux should be a proper desktop citizen, with full MPRIS support and untouched audio. Media keys should work. Desktop notifications should fire. Volume should track. None of that is exotic, and none of it should require a custom audio engine.

macOS followed

Devices enrolled in MDM can block personal Apple ID authentication in the native app. Sidra authenticates at the application layer, so MDM policy never sees it. Installed alongside the native app, it also gives a second person a fully isolated session with their own listening history and recommendations.

Windows followed

At the request of a friend who wanted a decent Apple Music client on Windows.

Sidra is the Spanish word for the traditional dry cider of Asturias in northern Spain: poured from height, unfiltered, drunk before it goes flat. No additives, no artifice, nothing between the apple and the glass.

Install

Pick your platform

Grab the latest release from GitHub Releases. Linux builds ship for x86_64 and arm64: Sidra-linux-x86_64.AppImage or Sidra-linux-arm64.AppImage, -linux-amd64.deb or -linux-arm64.deb, .x86_64.rpm or .aarch64.rpm. The arm64 builds are made natively and update from the release like the x86_64 ones.

Unsigned builds. Sidra's macOS and Windows releases are currently unsigned, requiring Gatekeeper and SmartScreen workarounds at install time. Sponsoring the project goes directly towards code-signing certificates to remove that friction for every user.

Get it from the Snap Store
AppImage

The AppImage runtime bundles its FUSE library. It does not need the host's libfuse2 or libfuse2t64 package. Normal launch still needs access to /dev/fuse and a working fusermount (FUSE 2) or fusermount3 (FUSE 3) helper from your distribution.

Make the downloaded image executable, then launch it. Replace x86_64 with arm64 for an ARM64 build:

chmod +x Sidra-linux-x86_64.AppImage
./Sidra-linux-x86_64.AppImage

If FUSE mounting is unavailable, extract and run the image without mounting:

./Sidra-linux-x86_64.AppImage --appimage-extract-and-run

Extraction does not remove Electron's system requirements. Older AppImageLauncher releases can reject this runtime. If that happens, update AppImageLauncher or use the .deb or .rpm package.

Debian and Ubuntu

Use the .deb package unless you need AppImage:

sudo apt install ./Sidra-*.deb
Fedora and openSUSE
sudo dnf install ./Sidra-*.rpm      # Fedora
sudo zypper install ./Sidra-*.rpm   # openSUSE
Snap

Ubuntu and other snapd-enabled distributions. The snap is published for both x86_64 and arm64, so this picks the right one:

sudo snap install sidra
AUR

Arch Linux and derivatives:

yay -S sidra-bin
Nix

With flakes enabled, install Sidra for your user:

nix profile add github:wimpysworld/sidra

For NixOS or Home Manager, add Sidra to your flake.nix inputs:

inputs.sidra.url = "github:wimpysworld/sidra";

NixOS:

environment.systemPackages = [
  inputs.sidra.packages.${pkgs.stdenv.hostPlatform.system}.default
];

Home Manager:

home.packages = [
  inputs.sidra.packages.${pkgs.stdenv.hostPlatform.system}.default
];

These module snippets need inputs in their function arguments, passed through NixOS specialArgs or Home Manager extraSpecialArgs. For Home Manager inside NixOS, use home-manager.extraSpecialArgs.

Flatpak (experimental)

Download the .flatpak bundle for your CPU from GitHub Releases: -linux-x86_64.flatpak or -linux-aarch64.flatpak. Install Flatpak through your distribution first. The bundle needs the Freedesktop 26.08 runtime, which comes from Flathub. Sidra itself is not published on Flathub.

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub org.freedesktop.Platform//26.08
flatpak install --user --or-update ./Sidra-VERSION-linux-x86_64.flatpak
flatpak run world.wimpys.sidra

Replace VERSION with the downloaded version and x86_64 with aarch64 for ARM64. For each Sidra update, download the newer bundle and repeat flatpak install --user --or-update with that file. flatpak update updates the runtime, but it does not find new Sidra bundles on GitHub.

Flatpak keeps settings, authentication and downloaded Widevine components in app-private storage under ~/.var/app/world.wimpys.sidra/. This storage is separate from native packages and persists across bundle updates. Protected playback and desktop integration still need validation on both architectures. Discord Rich Presence and controller access are not configured in this initial package.

macOS

DMG: open and drag Sidra to Applications.

On first launch macOS may report: "Sidra.app" is damaged and can't be opened. You should move it to the Bin. The app is unsigned, not corrupt. macOS shows this because the download is quarantined.

Strip the quarantine attribute in Terminal, then open Sidra normally:

xattr -dr com.apple.quarantine /Applications/Sidra.app

System Settings, Privacy & Security only offers Open Anyway for the milder "unidentified developer" prompt, never for "damaged", so Terminal is the dependable path.

Windows

Installer (.exe): run the setup wizard. It defaults to an installation for your user, lets you choose an installation for all users, and lets you select the installation directory.

SmartScreen will warn the installer is unsigned. Click More info then Run anyway.

As seen in

In the press

I am a presenter on Linux Matters and discussed Sidra's origins in Episode 79. Linux Magazin Online covers Sidra 1.0 and includes an interview with me.

Community

Built around, not into

MPRIS MiniPlayer

Sidra ships no mini player and does not need one. Christian Lauinger (ChrisLauinger77) asked for one in #125, then built MPRIS MiniPlayer: a small GTK4/libadwaita window that controls any MPRIS player on Linux.

It pairs beautifully with Close to tray. Hide the Sidra window, keep the mini player on top, and place it anywhere on your desktop. Thank you, Christian.

Noctalia Sidra template

Enable Noctalia's Sidra community template to add a live-reloading Custom Theme choice under Style in Settings, so Sidra follows your desktop colours.

FAQ

Frequently asked questions

Is playback lossless?

Sidra adds no AudioContext, DSP, or resampling of its own, although Chromium and the OS can still resample. On macOS and Windows, playback is lossless via CastLabs EVS production VMP signing.

Why does macOS say Sidra is damaged?

The app is unsigned, not corrupt. macOS shows this because the download is quarantined. Strip the quarantine attribute in Terminal with xattr -dr com.apple.quarantine /Applications/Sidra.app, then open Sidra normally. See the macOS install steps.

Is Sidra on Flathub?

No. An experimental .flatpak bundle is attached to each GitHub release and needs the Freedesktop 26.08 runtime from Flathub, but Sidra itself is not published on Flathub.

Is there a mini player?

Sidra ships no mini player and does not need one. On Linux, MPRIS MiniPlayer controls any MPRIS player, Sidra included, and pairs well with Close to tray.

Where are the settings and the documentation?

Open Settings with the gear button beside Back, Forward and Reload, or press Ctrl+, on Linux or Windows and Cmd+, on macOS. Full guides live in the Sidra wiki: Home and Controls, Custom Themes, Scrobbling and Development.