Amazon Music on Linux

Amazon Music does not have a desktop client for Linux. The web application works fine but is restricted to SD only. After rooting about a bit, I found that using bottles gets you an easy working install of the Amazon Music Windows application on Linux that allows you to play HD and UltraHD tracks.

Download bottles from here, then create a new bottle for Amazon Music. You now need the Amazon Music Installer executable.

Annoyingly, I was not able to download this on Linux using any browser – they all refused to get the content and I was too impatient to figure out how to get it through Curl. I downloaded it from a Windows VM instead and put it in a shared location. Now run this executable in your bottle and then launch the installed application from the bottle to enjoy Amazon Music.

[Edit] I figured out that this is due to user agent sniffing by Amazon Music. On Edge, use Developer Tools, Network Tab, Change User Agent to Custom and pick the Windows Edge User Agent configuration to download the executable on Linux.

You can tweak settings like font DPI to make the display better. I haven’t played around enough to get the display looking better other than increasing DPI to 120 but it is quite usable out of the box after installing DXVK and allfonts dependencies.

As far as I can tell, this does not let Amazon Music integrate with my KDE desktop as a media player (media keys do not work, desktop media controls do not apply to the app etc). For now, I’m ignoring that problem as I am just happy to be able to listen to higher quality sound on my main home working environment.

Update:

A recent system update broke my shortcut (Amazon Music would not launch and journalctl showed that bottles was failing to load libvulkan and earlier error messages related to xdg). As it turns out, the issue is really due to xdg + bottles + gtk in some complex dependency chain that was creating the problem – you can completely bypass xdg and use bottles cli to launch the installed program if you run into this problem (although I still don’t know how to launch the bottles UI yet):

flatpak run --command=bottles-cli com.usebottles.bottles run -b AmazonMusic -p "Amazon Music"

Specific error messages in the logs when I hit this issue:

xdg-desktop-por[6661]: A backend call failed: No such method 'CreateMonitor' in interface 'org.freedesktop.impl.portal.Inhibit' at object path '/org/freedesktop/portal/desktop' (signature 'ooss')

Failed to close session implementation: GDBus.Error:org.freedesktop.DBus.Error.UnknownObject: No such object path '/org/freedesktop/portal/desktop/session/1_276/gtk2031919259'

Failed to realize renderer of type 'GskNglRenderer' for surface 'GdkWaylandToplevel': Failed to create EGL display

Failed to realize renderer of type 'GskGLRenderer' for surface 'GdkWaylandToplevel': Failed to create EGL display

segfault at 40 ip 000073a4ae29eb6f sp 00007ffddb637970 error 4 in libvulkan.so.1.3.261[73a4ae266000+45000] likely on CPU 2 (core 4, socket 0)

Leave a Reply

Your email address will not be published. Required fields are marked *