I'm trying to script the creation of a hyrbid (iso/joliet/hfs) iso with hdiutil. I can, for example, build an iso that hides things on the mac side like so:
hdiutil makehybrid -o foo.iso -hfs -joliet -iso -hide-hfs "{foo/bar.txt,foo/other.rtf}" foo
That's just an example of course, but the point is I can get it to hide say seven or eight example files I specify like that, with spaces in the filenames and verious dots and underscores.
But for my actual real-deal script I need to list in the neighborhood of 70 files, which does not seem to work when I test it. The whole string is being passed in correctly, I know this because when you turn on '-verbose' it prints the string and says it doesn't match anything.
So my best guess is it has something to do with the length of the string passed in, but I don't see anything in the docs indicating that. Any ideas? Think it's a bug? An alternative way of accomplishing this?
This is on Mac OS X 10.5.8, btw.
Two [UPDATE, make it Three] (untested) suggestions:
use the
-plistin
option to specify all the parameters;(better) try organizing the files to be hidden into directories, if necessary, so you can easily hide them by directory-specific globs rather than having to spell out each file.
[UPDATE] you could try using
mkisofs
from cdrtools to make the ISO image.MacPorts
has a supported port of it. It could be that the code inhdiutil
was originally based on an earlier version. In any case, you have the advantage of access to the source code and perhaps figuring out what the limitations are.P.S. There seems to be a couple of minor nits with the MacPorts port. In particular, the
man
pages are installed in the wrong directory. [UPDATE: fixed in 3.00_1]