mattintosh note

どこかのエンジニアモドキの備忘録

Mac でログインしたときに Windows XP のサウンドを鳴らす

夏休みももうすぐ終わりだし launchctl で何か遊びたいな〜、とかなんとか。

最近 Windows の資料を色々漁ってたりする関係でなんとなく OS X のログインサウンドを Windows XP と同じにしてみるぜ!!!

みたいな。


Windows XP Service Pack 3 から xpstartu.wav を取り出す。解凍には p7zip を使用する。i386/xpstartu.wa_ を取り出して更に展開する。展開先は適当に $HOME/Library/Sounds

7z e WINDOWSXP-KB936929-SP3-X86-JPN.EXE i386/xpstartu.wa_
7z e -o$HOME/Library/Sounds xpstartu.wa_

launchctl 登録用のプロパティリストを書く。ProgramArguments に記述するファイルパスはフルパスで。音量などを抑える場合は afplay のオプションで。プロパティリストの名前とラベルは適当に。~/Library/LaunchAgents に保存しておく。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.github.mattintosh4.xpstartu</string>
    <key>Program</key>
    <string>/usr/bin/afplay</string>
    <key>ProgramArguments</key>
    <array>
        <string>afplay</string>
        <string>/Users/foo/Library/Sounds/xpstartu.wav</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

launchctl に登録する。プロパティリストが正しければこの時点で音が鳴る。

launchctl load ~/Library/LaunchAgents/com.github.mattintosh4.xpstartu.plist


実際にやってみると思ったほど面白くなかった。tada.wav とか初代プレステかスーファミの方が面白そうだ。