Guide: How to run Steam when your macOS drive is case-sensitive
Unfortunately companies like Steam and Adobe have still opted not to properly update their apps to be compatible with case-sensitive file systems, so if you have opted to choose this when setting up your Mac or Hack, when you get to wanting to install Steam you'll run into issues.
Fortunately in the case of Steam there is a workaround that will let you play your favorite Steam games, even if you don't have any case-insensitive partitions available. In this quick guide I'll show you how I did it. It's a little quirky, but quite easy.
Update: I have updated this guide and added a step, which is useful for people who previously already tried launching Steam before finding this guide. You can find it down below in the re-worked guide, called step "pre-3."
Step 1: Create a Disk Image
Launch Disk Utility (if you're not familiar, you can find this in the Utilities folder within your Applications folder), and select File » New Image » Blank Image...
Save it as something memorably, such as "Steam," and select the folder you'd like to save it in. In my case I chose to store it right in my Applications folder. Before you hit save, we need to change some of the image settings.
Sparse disk image in the
Image Format selection, and
Mac OS Extended (Journaled) under
Format. Now, in
Size enter the maximum size you'd like this disk to be. Don't worry, the image won't take up that amount of space right away, it will expand as your content grows. I recommend you choose something sane. I have chosen
40 GB for my image, as I don't really play many games at all these days and mostly want Steam for the occasional indie fix. You should pick a size that works for the kinds of games you're planning to install.
With those settings in place, hit
Save and after a moment your newly created image will be ready to go. Open it if this wasn't done automatically already, and let's get to the second part.
Step 2: Install Steam.
Assuming you have already downloaded the Steam installer dmg, open it and, instead of dragging
Steam.app into your Applications folder, copy it onto the image you just created. Don't launch it just yet, we need to do one more thing.
Step "pre-3": If you have already tried launching Steam
If you have already attempted to launch Steam before on this computer, Steam will have already created a folder where we want to create a symbolic link. In this case we first need to delete this folder. Open a Finder window, open the Go menu and while holding down Option on your keyboard select the Library option that pops up. Next, open the Application Support folder, find the folder called Steam and delete it. On a fresh install there should be nothing important in here, as Steam refuses to boot on your case-sensitive file system.
Note: If you happen to have manually copied this folder over, you probably want to preserve it instead, and move it to inside the disk image we're creating in this guide.
Step 3: Create a symbolic link
Open Terminal (Applications » Utilities) or iTerm and copy/paste the following line:
mkdir /Volumes/Steam/Library && ln -s /Volumes/Steam/Library ~/Library/Application\ Support/Steam
Note: If you have called your image anything other than
Steam, you should replace that part of the above command (in both places). The rest can remain the same.
What this command does is create a shortcut from where Steam expects its Library data to exist (inside your
~/Library/Application Support folder) to where it actually resides, which is in a newly created folder called
Library on your just created disk image.
If something else showed up, like a message saying the creation of the symlink failed, you probably already have an actual folder in place. If that's the case, please check the "pre-3" step described above, and follow this carefully (without first launching Steam again).
If nothing should showed up in the terminal window other than a normal new line, it means you're done! You can now launch Steam from your disk image and it will work as it should.
Any time you want to play some games, all you have to do is mount the disk image and launch Steam from there. If you drag Steam into your dock or launch it from something like Alfred you don't even have to manually mount the disk image first, macOS will automatically do this, so long as the image file is kept in the same place between uses.
While it's certainly not a perfect solution, it does work and allows you to use a case-sensitive file system, which depending on your work or personal needs might be a firm requirement for you, or at the very least you don't have to reinstall your entire machine just for Steam to boot.
A happy side effect is that it becomes pretty easy to bring your Steam library with you, meaning you can have your one installation in this disk image and store it on an external hard drive, for example, and use it on different Macs if you have more than one, so long as each one has the symbolic link in place.
Thank you for reading, and enjoy playing!