Geek Culture
Published in

Geek Culture

How I Got iTunes Running On Linux Mint 20.1

After a number of other failed attempts, this process actually worked.

The Linux Mint logo on the left, plus a question mark, equals the iTunes logo on the right.

If you’ve followed my earlier Linux-related guide: How To Play RPG Maker Games On Linux Using Wine, you’ll be familiar with the kinds of things that I had already tried to get iTunes running on Linux Mint. Spoiler alert: None of them worked.

The closest I had managed to get reflects what reports were showing on Wine HQ’s database page for iTunes version 12.x. Namely, the software itself would install properly, but when you try to run it, the interface and the vast majority of the UI elements and the text were all the same black color. This made it pretty much impossible to functionally use and operate, since text is unreadable, and elements of the interface cannot be visually distinguished.

But a little before writing up this article today, I actually managed to find a way to get it working. With the help of the PlayOnLinux front-end software for Wine, and following the exact steps below, I was able to get iTunes up and running in Linux Mint 20. Hopefully you will have some success with this too.

A quick word before I get into the directions, for the sake of clarity. I’m using Linux Mint with the Cinnamon desktop environment, so these instructions will reflect that. If you are using MATE or another DE, the guide should still apply overall, but the steps and locations of things may vary. Same goes for Ubuntu Linux users. This approach may very well work for you too, though the locations and steps might be a bit different than what are described here.

Step 1: First, Install PlayOnLinux From The Software Manager

In Linux Mint, start by opening the Menu, going to “Administration,” and then choosing “Software Manager.”

In the Software Manager window, search for “play on linux” and click on the “Playonlinux” package that appears in the search results for more details. To install it, simply click the “Install” button at the top right of the details page. The version at the time of writing this article that I’ve installed is version 4.3.4–1ubuntu1.

When PlayOnLinux finishes installing, you can easily find it again in the Linux Mint Menu under the “Accessories” category, or else at the very top under “All Applications.”

Step 1.5: If You Tried Installing iTunes Previously, Remove Any Existing Installation, Otherwise Continue To The Next Step

If, like me, you had tried previously to install iTunes manually with Wine or some other method that didn’t end up working out, I discovered that you’ll want to remove those earlier installations first, or else the installation with PlayOnLinux will run into issues and not work correctly.

To uninstall programs that you have installed with Wine, simply open up the Terminal (Ctrl+Alt+T on your keyboard is the shortcut by default) and in the Terminal window type: wine uninstaller and press the enter key. This will open a window that looks similar to an old Windows uninstall one, and make sure you remove everything in there from Apple, Inc. before starting for good measure (I’m not sure if it’s necessary to remove more than iTunes, but I also removed Bonjour and the Apple Software Updater from the list too.)

When I first tried installing iTunes with PlayOnLinux, I still had an earlier manual install of iTunes on my system, and PlayOnLinux threw some errors during installation, seemingly running into issues. When I tried to run iTunes 12, it came up with an error message saying: “The file “iTunes Library.itl” cannot be read because it was created by a newer version of iTunes.” and it wouldn’t load up properly.

At first it led me to believe this was just another failed approach to getting iTunes working on Linux, so I removed the PlayOnLinux install I had tried. But when I went back and removed the earlier installation and restarted my computer, and tried to install iTunes again with PlayOnLinux, it did not run into any errors, and I no longer received the previous message when starting iTunes.

Step 2: Download A 32-bit Version Of iTunes For Windows

When you get to the installation process with PlayOnLinux, it will specifically mention that you will need the 32-bit version of iTunes. The one I used is an older version of iTunes from way back in 2015, version 12.1.3 found here.

The newest 32-bit version at the time of writing is actually version 12.10.11, released at the end of 2020. While it’s not generally recommended to install such an old version of software like I did, and I’ll probably go back after this and try again with version 12.10.11 myself, if you do attempt it with the newest one and it fails to work for whatever reason, version 12.1.3 is what I used here, and it did work for me.

Make sure you save the “iTunesSetup.exe” installation file in a location that you can easily remember and access, because during the next step, PlayOnLinux will ask you to locate it.

Step 3: Install iTunes Using PlayOnLinux

Start the PlayOnLinux software, and click the +Install button at the top of the main window. A new smaller window should appear called “PlayOnLinux install menu” and you should see a search box. Simply type “iTunes” into the search box and you should see 2 results, one for iTunes 10, and another for iTunes 12.

Assuming you downloaded some version of iTunes 12, click on the iTunes 12 entry and to the right you will see a warning. It says “Warning: Synching with iDevices doesn’t work! (2019).” As you might have guessed, I don’t have any iDevices at this point to test that out with in 2021 to see if anything has since changed. If you were hoping to use this particular installation of iTunes for that purpose, you may have some difficulties or disappointment here.

To start the installation process, go ahead and click the “Install” button at the bottom right of the screen. PlayOnLinux will walk you through the necessary steps, including fetching its own version of Wine, and setting itself up on your system. It will caution you about making sure you uncheck the box for “Open after installation is completed” and it will also recommend you do not change the default installation location, so make sure you read the precautionary messages that PlayOnLinux provides before proceeding.

You will reach the point partway through where it asks you for the iTunes 32-bit installer file, and so you just click the button that appears below that, and navigate to whatever location you saved the iTunesSetup.exe file to, select that file, and then the installation process will resume.

You’ll be greeted with the familiar windows of the actual iTunes installer, including the terms of use agreement and selections related to default settings. Again, make sure you are following the recommendations from PlayOnLinux during these steps. After the installation process completes, the window will close, and you will now have an entry in PlayOnLinux for iTunes 12.

Step 4: Run Your New PlayOnLinux iTunes 12 Installation

Back in the main PlayOnLinux window, click on the iTunes 12 entry and then click the Run button with the Play symbol up top. With any luck, you will see the actual iTunes window appear, and be its normal colors and everything.

From here, most things work as you might expect them to on iTunes for Windows or MacOS installations. Most things. If you’re having any difficulties, see the next section below for a few things I ran into.

Troubleshooting Some Difficulties, Finding Workarounds, And Also Not Finding Workarounds

Now to explain briefly, it has been a really long time since I last logged into my Apple account. Having been about 4 years since my last iPhone, and much longer than that since I was last using a Windows computer, I simply haven’t had access to iTunes that I was aware of, nor any real need to log in to my account. I was expecting some emails or prompting of “is this really you?” or that sort of thing, but surprisingly I was able to log in without much trouble. What I did have trouble with though was accessing content with this new iTunes installation.

Authorizing Your Linux Computer

As you probably know, iTunes has you “authorize” each device or computer that you’re logged into. If you aren’t on an authorized device, then you can’t actually use the songs, TV shows, or movies you have purchased. I first attempted to do this via the “Account” icon (the silhouette of the person’s head at the top right of iTunes,) and I met with an error message when trying to do so.

It said something like this: “Software Update Required: To make changes to your payment information, you need to upgrade your computer to the latest version of Windows.” Uh-oh. Well I wasn’t certain what to do here. I tried to access my past purchases, and it wanted me to log in again to confirm, and that was fine. However, it would not let me authorize my computer this way, and I began to fear that authorization would be impossible on Linux.

Fortunately for whatever reason, it did allow me to authorize the computer in a different menu. If you click the icon with two tiny little squares, one gray and the other white, at the very top left corner of the iTunes window, you’ll see a menu appear with some additional options and settings in the software. From this menu, I was able to select the “iTunes Store” option, and in the sub-menu that appears, select “Authorize this computer…” to in fact authorize it properly, and gain access to my past purchases.

If you’re having this issue however, and it persists, see the info here: The gist of it is essentially “use a newer version of iTunes” and I would have to agree with that in general.

If you can get 12.10.11 working, or whatever is the latest version of 32-bit iTunes for Windows when you’re reading this in the future, then there’s no reason not to use the latest version, and plenty of reasons not to take risks with a 5+ year old version. Unless using 12.1.3 is the only way it works at all on Linux for you. Something is better than nothing!

Audio Issues During Video Playback

I was surprised to see that video playback worked at all, honestly. Music playback I anticipated would work, but video is the kind of thing I was expecting to be iffy while running under Wine. I can confirm it does work, for both SD and HD content, but for me I have issues with the audio that I haven’t been able to solve yet.

Now keep in mind, I’m using 12.1.3 and with such an old release of the software, these problems may very well go away with the newer 12.10.11, or perhaps some other version in between the two. But the audio started out having that fuzzy/crackling issue, you probably know the one. It sounds like people are gargling at the same time they’re speaking their lines, or like you have some bad electrical interference going on with your speakers. It’s a strange but clear indication that something is amiss with the audio situation.

I went into the top-left menu to Preferences, and from there to “Playback” to adjust the audio settings from the Playback Preferences screen, and that did help a little bit in at least getting rid of the crackling when I changed the “Bitrate For Audio Playback” and Exited iTunes, followed by launching it again from PlayOnLinux. The audio was now clear at least, but when I go to play a video, audio is out of sync with the video by a few seconds on everything I have tried downloading thus far.

It’s not the ideal experience, but I can live with it a little easier than I can the crackling/garbled/distorted audio stuff. My first attempt playing SD content had the audio really sped up quickly and dropping out, but fiddling with the settings and restarting again cleared that up too, but the de-sync was still present just like before.

I tried changing from “Direct Sound” to “Windows Audio Session” to see if that helped, but it didn’t seem to change anything. I’ve tried a variety of frequency settings, as well as changing from 16 bits per sample for audio to 24, and nothing seems to be having an impact on the audio being out of sync with the video.

Share Your Findings In The Comments

Now just to be clear, I’m not really complaining with the audio issues. This is much further than I’ve ever gotten before with iTunes on Linux, and frankly, I’ll take it. I was happy to see it could play video content at all through the software, fully expecting it to fail to do so, especially for HD video.

If I happen to find a solution to this issue, whether that’s installing version 12.10.11 instead, or finding some other setting that fixes the audio, I will be sure to post a comment below with the update for you folks. Please do the same if you experience this issue and find a solution to it before I do.

Mostly I just wanted to share what I have come across, and how far I was able to get with this whole process, since up until now I had no luck even getting iTunes up and running properly. I consider this a huge success by comparison, and I can now access my iTunes content again on Linux, even if there are a few small kinks left to work out.

Thanks for reading! Let me know in the comments if this helped you out, or your findings too!




A new tech publication by Start it up (

Recommended from Medium

Redirect Requests To A Domain With AWS Lambda

Keeping track of graph changes using temporal versioning

Ethernaut — Level 20— Denial

Why you should learn C++ for game development

From UWP/Xamarin Forms to Xamarin Android building an MVP ( Release Build) [Part 3]

How to use AWS EC2, EBS, and S3 services using AWS CLI…

Swashbuckle — SchemaGeneratorException

Aerosoft F14 Manual Download

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jonathan Hawkins

Jonathan Hawkins

I’ve a knack for tutorials & how-to’s, unusual perspectives that express themselves thru words, and I love writing about video games, especially wholesome ones.

More from Medium

How to make your own Retro Console with a Raspberry Pi

After the Raspberry Pi comes the LX2 Honeycomb

How to Remotely Access a Raspberry Pi on a Mac via SSH

Showing a connected status to the Raspberry Pi on the Mac Terminal

37% of World’s Smart Phones Could Have Been Used for Eavesdropping