Mac OS X対応ソフトがどんどんと世の中に出始めている。商品よりも、フリーソフト系が目立つのは仕方ないとしても、世界中のあちらこちらのサイトで、すでにたくさんのソフトが配付されている。従来のMac OSでは、そうしたオンラインソフトのファイルは、StuffItで圧縮したsitファイル、あるいはさらにそれをBinHex形式にエンコードしたbinファイルあたりがメジャーなところだろう。自己解凍可能なseaファイルもあるが、Mac OSにStuffIt Expanderが同梱されているだけに、sitでも十分と考える人が多いようだ。これらのファイルへのリンクをクリックすると、何も考えなくてもちゃんとダウンロードして、デスクトップなどにファイルはきちんと取り込まれている。PDFファイル(.pdf)や、Excelのワークシート(.xls)なんかもそのままアップロードしてもとりあえずはなんとかなっているというのが事情である。 ところが、Mac OS Xのソフトをダウンロードする時、ブラウザの画面にいきなり化け文字が並んでしまうという経験は、何度もダウンロードしている人だと必ずぶちあたっているだろう。これは、ソフトウエアを含むファイルの中身は確かにインターネットを通じてダウンロードできているのだが、それをWebページなどブラウザで表示するものだと勘違いしてWebブラウザで表示してしまっているのである。この場合にどうすればいいのかということを、紹介してみたい。
まず、こうした結果になるのは、おそらく拡張子が.dmgのファイルだろう。これは、ディスクイメージファイルと呼ばれるもので、デスクトップにマウントされるボリュームの中身全体が入ったファイルなのである。Disk Copyアプリケーションを使えば、このdmgファイルの内容をもとに、ハードディスクのようなボリュームが作られ、そこにたくさんのファイルやフォルダが入っているようにできるというわけだ。つまり、昔風に言えば、フロッピーディスクにいろいろなファイルを配置した状態を、そっくりそのままダウンロードした人のデスクトップに再現できるというものなのである。もちろん、Mac OS Xではインストーラでのインストールも可能な.pkgというファイル形式があるのだが、アプリケーションなど単にダブルクリックすれば使えるようなものにわざわざインストーラを作るにしても使うにしても効率が悪い。そういうアプリケーションだと、dmgファイルで、アプリケーションそのものとたとえばReadMeファイルをいっしょにして配付してしまおうというわけだ。 ちなみに、dmgファイルの種類をFinderのインスペクタ見ると、UDIF device imageとなっているが、UDIFはUniversal Disk Image Formatの略である。ディスクイメージの変遷はいろいろあるが、Terminalで「man hdiutil」などとしてhdiutilコマンドをマニュアルを参照するとある程度の説明はある。UDIFはMac OS X向けにアップデートされたディスクイメージファイルのフォーマットである。
なお、Mac OS X Serverでも、dmgファイルに対するMIMEタイプの割り当ては設定されていない。(Mac OS Xでも同様だが、/etc/httpd/mime.typesファイルを上記のように変更すればよい。) Mac OS X Serverの場合は、Server Adminを使って定義を追加することができる。Sever Adminの「インターネット」のタブに「Webサービス」という設定がある。そのアイコンをクリックして、「Webサービスを設定」を選択すると、設定ダイアログボックスが表示される。そして「MIMEタイプ」のタブをクリックすると、設定されているMIMEタイプが一覧されるはずだ。そして「追加」ボタンをクリックして、dmgに対してapplication/octet-streamのMIMEタイプを割り当てるように設定を行う。図を参考にしてもらいたい。