Skip to content

Instantly share code, notes, and snippets.

@dixson3
Created January 10, 2014 19:11
  • Star 77 You must be signed in to star a gist
  • Fork 27 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save dixson3/8360571 to your computer and use it in GitHub Desktop.
Create and manage a case-sensitive disk-image on OSX. This is great when you have a need to work with case-sensitive repos on a mac.
#!/bin/bash
# where to store the sparse-image
WORKSPACE=~/Documents/workspace.dmg.sparseimage
create() {
hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 60g -volname workspace ${WORKSPACE}
}
detach() {
m=$(hdiutil info | grep "/Volumes/workspace" | cut -f1)
if [ ! -z "$m" ]; then
hdiutil detach $m
fi
}
attach() {
hdiutil attach ${WORKSPACE}
}
compact() {
detach
hdiutil compact ${WORKSPACE} -batteryallowed
attach
}
case "$1" in
create) create;;
attach) attach;;
detach) detach;;
compact) compact;;
*) ;;
esac
@strogonoff
Copy link

Re https://gist.github.com/dixson3/8360571#file-workspace-sh-L7, see https://discussions.apple.com/thread/2001162 on SPARSE vs. SPARSEBUNDLE, the latter may be a better choice.

@jaredatron
Copy link

I was running a setup very similar to this when I upgraded to Mojave I found that mounted disk image's disk performance was so slow as to be unusable. So I made a new image using APFS (Case-sensitive) instead of Mac OS Extended (Case-sensitive, Journaled) and it was much much faster.

@Foadsf
Copy link

Foadsf commented Dec 18, 2021

For those who end up here, a minimalistic solution here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment