Fixing Steam for Mac on a case-sensitive filesystem.

While it should not be necessary, it is possible (with a bit of symlinking) to get Steam on OS X working with a case-sensitive boot volume.

This can be done as follows:

  1. Launch Disk Utility, and create a new disk image (File > New > Blank Disk Image…).
    I used the following options:

    • Name: Case Insensitive
    • Size: 100 GB
    • Format: Mac OS Extended (Journaled)
    • Partitions: Hard Disk
    • Image Format: sparse bundle disk image
  2. In your new case-insensitive volume (mine is named “Case Insensitive”, so all paths used in this document will refer to it as such), create the following directories:
    • /Applications
    • /Home
    • /Home/Library/Application Support/Steam
    • /Home/Documents/Steam Content

    NOTE: These paths are suitable for a single user. I chose to use /Users/dustin/…

  3. Download Steam and put Steam.app in /Volumes/Case Insensitive/Applications
  4. Symlink your Steam directories to the case-insensitive volume. In Terminal:

    ln -s /Volumes/Case\ Insensitive/Home/Library/Application\ Support/Steam ~/Library/Application\ Support/Steam
    ln -s /Volumes/Case\ Insensitive/Home/Documents/Steam\ Content ~/Documents/Steam\ Content

  5. Create /volumes (lowercase) and symlink /Volumes/Case Insensitive into it as “case insensitive”. This is to get around the intentional lowercasing Steam does of all paths it comes into contact with.

    mkdir /volumes
    ln -s /Volumes/Case\ Insensitive /volumes/case\ insensitive

  6. Launch Steam!

If that’s too much work, use this shell script. Save it to your home directory (or wherever, really), launch Terminal, and issue the following commands:

chmod +x ~/steamcase.sh
~/steamcase.sh 100g

Substitute 100g with your desired size. This script creates a sparse bundle disk image, so you don’t need to worry about having all 100 GiB (or whatever size you choose) available up-front.
Then proceed to install Steam.app to /Volumes/Case Insensitive/Applications. Run and enjoy!

Honestly, Valve, this shouldn’t even be necessary.

Comments

18 responses to “Fixing Steam for Mac on a case-sensitive filesystem.”

  1. Samuel Williams Avatar

    This is pathetic. Valve needs to get their act together.

  2. Joe Avatar
    Joe

    Y’know, I thought about it for a while, and then realized something. Valve’s goal with forcing you to use a case-insensitive filesystem might have some merit beyond being a pain to power users.

    1- Apple does ship all their systems case-insensitive in the first place, so a typical user will never notice this problem.
    2- Valve does *not* control all the games published on Steam. While I dislike that they do path mangling to lowercase the folder names for where content is located, it’s very possible that games published on the Steam store might have never taken into account case-sensitivity. (Especially the ones ported from windows.)

    I think Valve forcing Steam to be on case-insensitive volumes simplifies a lot of things for mac users in the long run, even if those of us with case-sensitive volumes have to go through this ugly workaround to play.

    Course, if they do ever bring it to linux, developers are in for a world of hate on being case-insensitive.

  3. Arthur Avatar
    Arthur

    scripts works like a charm!

  4. John Avatar
    John

    Hey, thanks for the script! My mac seems to be too slow to play though. :/

    How can I reverse the actions of the script?

    Thanks!

  5. Jeremy Avatar
    Jeremy

    The script worked well. It created the case insensitive volume. However, when attempting to run the Steam program I still get the same error about needing to run on a case insensitive volume.

    What is wrong?

    1. vanKuchen Avatar
      vanKuchen

      Hi there,
      I got the same problem and tried to reinstall steam. First steam is updating but then the same error message occurs.
      Yesterday I could play Portal with the same configuration ..

  6. Francesco Avatar
    Francesco

    I used the script, but it doesn’t works for me. Keeps complaining about case sensitive file system

  7. McHawk Avatar
    McHawk

    I’m still having the same problem, after using the script.
    And the weird thing is, that my file system is not even set to support case sensitivity, it is a standard Mac OS Extended (Journaled) partition.

    1. ChunkAhoy Avatar
      ChunkAhoy

      Same thing here.
      I’m using an Alias to place my game outside of my small SSD and neither of my drive are partitioned as case sensitive and i get this message.

  8. Daniel Avatar
    Daniel

    hey you guys, i need help with my ipod 4th gen.
    my mom took away my ipod for a month and she gave it back to me today n it wont start or turn on, all it does is show the apple sign and it says connect to itunes, and wen i do i have to update n wen the update is over it says unable to restore, dude in scared right now please help me
    (oh yea i jail broke it with green poison)
    PLZ HELP!

  9. Klaro Avatar
    Klaro

    Thank you thank you thank you!
    I’ve been sitting all night trying to get this work for my sister who wants to play L4D2. I’d just given up but your script did it. Thank you!

  10. James Liddy Avatar
    James Liddy

    This goes along the same lines of “why don’t you support spaces in passwords” and for a line time “why aren’t your passwords case sensitive” you can’t even attribute it to laziness as it takes more work to strip out and check for those things instead of just allowing them.
    It blows my mind that this should be somethings actively fought against.

  11. Klaro Avatar
    Klaro

    Hey, I don’t know it there’s anyone who can answer this, but I’m stumped. This solution worked wonderfully for me for a few weeks, until it was time for a Steam update (I think). Now when I try to start the program it says it can’t connect to the network. My internet-connection is fine, is there anyone who know what the problem is and how I might fix it?

    1. TigerC10 Avatar
      TigerC10

      Klaro, I’m having the same problem as you. I’m still trying to find the solution myself.

      Incidentally, Steam no longer holds the downloaded files in ~/Documents/Steam Content because they encapsulated it in the ~/Library/Application Support/Steam directory as ~/Library/Application Support/Steam/SteamApps

  12. Mike Schwager Avatar
    Mike Schwager

    Some of you comment that you are having problems with this.

    Make sure you remove Steam from your Applications folder. Then, install it into the Case Insensitive Applications folder.

    Then, run it out of that folder as well.

    Maybe that will fix things for you.

  13. Joseph Avatar
    Joseph

    Linux files systems are case-sensitives. This just makes it easier for them to support Linux and OS X with minimal differences in the maintenance of each since both of them are virtually the same exact things — Unix clones. If you’re using a Mac and don’t know this, you’re doing it wrong.

  14. Callum Avatar
    Callum

    I did the shell script.
    but it says i need to update eventhough im already online
    HELP!