mattintosh note

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

2024-06-05: 現在ホビー関連の記事を hobby.mattintosh-note.jp に移行しています。現在掲載されている画像と今後掲載される画像は一部の環境から閲覧できなくなります。

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 とか初代プレステかスーファミの方が面白そうだ。