Blog

Apple Music on Linux as a desktop app

Popular sites · · 5 min read

Apple lists no Apple Music app for Linux, so on Linux the official route is the web player at music.apple.com in a browser. A Pake window cannot play the Apple Music catalogue on Linux: the player needs the browser's protected-media support, which WebKitGTK release builds leave out and which Pake does not turn on. Use Chrome, which can install music.apple.com as an app with its own window, or Firefox, the two Linux browsers Apple's web guide names.

What Apple offers on Linux

Apple's Apple Music page says Apple Music is on iPhone, iPad, Apple Watch, Apple TV 4K, Mac and HomePod, that you can listen "online at music.apple.com", and that it is also available on Windows and Android devices, Sonos speakers, smart TVs and more. It does not mention Linux, which is why Linux users end up in the browser.

To use the web player you sign in with an Apple Account and subscribe. Apple's web guide says to go to the Apple Music website, click Sign In in the bottom-left corner and sign in, that you can create an Apple Account during setup, and that Apple Music is not available in every country or region. The same page says that in Safari, Chrome or Firefox you can also listen to the Apple Music radio stations for free once signed in.

Apple's guide has no page listing supported browsers. The only browsers it names are Safari, Chrome and Firefox, in that radio sentence, and Safari does not run on Linux.

Why it does not play in a Pake window

Catalogue songs are protected media. A web page plays them through the Encrypted Media Extensions API, which hands decryption to a content decryption module in the browser. The script music.apple.com loads, and Apple's MusicKit on the Web library, ask the browser for one of three key systems by name: Widevine (com.widevine.alpha), FairPlay (com.apple.fps) and PlayReady (com.microsoft.playready). A view that offers none of the three cannot decrypt the songs.

WebKitGTK, the engine Pake uses on Linux, offers none of them in the builds distributions ship:

  • In WebKit's build configuration for the GTK port (Source/cmake/OptionsGTK.cmake), Encrypted Media is only compiled in when experimental features are enabled, and experimental features are off by default. Arch's webkit2gtk-4.1 package, the one the Pake desktop app installs on Arch and Omarchy, builds with those defaults.
  • Even in a build that has it, the enable-encrypted-media setting defaults to false, and WebKitGTK's documentation says it works only if the feature was enabled at build time.
  • Pake 3.17.8 does not change that setting. Its Rust source never sets encrypted media, and wry 0.54.2, the library that creates Pake's WebKitGTK view, turns on WebGL, Web Audio and the page cache but not encrypted media.
  • The bridge the GTK port's encrypted media code uses for third-party decryption modules (Thunder) is enabled only in developer builds, so a release build has nothing to hand Widevine or PlayReady content to.

So this is not a setting you can find in Pake's options, and changing the user agent does not help: a different --user-agent changes what the site thinks the client is, not what the engine can decrypt.

Use Chrome or Firefox

On Linux, open music.apple.com in Chrome or Firefox and sign in there. If you want it to feel like an app, Chrome can install the page as an app: Google's steps are More, then Cast, save, and share, then Install page as app..., or the install icon in the address bar on some sites. The installed app gets its own app window and still runs on Chrome's engine, so it plays what a Chrome tab plays.

For the same reason, the Pake desktop app on Arch and Omarchy is not a route for Apple Music either. It builds apps on the same system WebKitGTK, so the catalogue does not play there.

Where Pake still fits

Pake is still the right tool for Linux web apps that do not depend on protected media, such as chat, mail, calendars and notes, where a separate window with its own icon is the point. For music services the question to ask first is whether the service plays protected streams. YouTube Music is a different case with its own limits, covered in the YouTube Music post.

Cider and other clients

Cider is a third-party Apple Music client; its site describes it as "Community-run Apple Music for Windows, macOS, Linux, and Android". It is not made by Apple, and its Flathub listing names Cider Collective as the developer and gives a proprietary licence. Read its own pages for what it does before you install it. It is not a Pake feature, and the Pake desktop app does not use it.

FAQ

Is there an official Apple Music app for Linux?

Not on Apple's page, which lists Apple devices, Windows and Android and points to music.apple.com for the web.

Will Apple Music play inside a Pake window on Linux?

No. The web player needs a Widevine, FairPlay or PlayReady module through the browser's Encrypted Media API, and WebKitGTK as distributions ship it, and as Pake configures it, provides none.

Is there a Pake flag that enables DRM?

No. Pake's CLI options and FAQ document none, and the source at the released version sets no encrypted media option.

Do I need a subscription?

Yes for the music catalogue, with an Apple Account signed in. Apple's web guide says that in Safari, Chrome or Firefox the radio stations are free to listen to after you sign in.