このブログはURLが変更になりました

新しいブログはこちら→ https://matsuu.hatenablog.com/

LinuxマシンにPokenを挿したら自動で管理画面を開く方法

Pokenを手に入れました。なかなか良くできてますねこれ。

PokenLinuxマシンに挿すとリードオンリーなUSBマスストレージ(FAT)として認識するので、その中のStart_Poken.htmlを開くだけ。

でもいちいち開くのは面倒くさい。だったら挿せば自動的にStart_Poken.htmlを開くようにすればいいじゃない。

注意事項

Windowsにおけるautorun.infと同様に、セキュリティ懸念があります。内容を十分に理解した上で設定しましょう。

やり方

とりあえずGentooでの方法。他のディストリビューションでも多分ほぼ同じ。

まずsys-apps/ivmanとx11-misc/xdg-utilsをインストールする。

# emerge ivman xdg-utils

ユーザアカウントをplugdevグループに追加。

# gpasswd -a <ユーザ名> plugdev

ここで一旦Xをログアウト、再ログイン。

ivmanはsystem-wide daemonで実行可能(/etc/init.d/ivman)だが、ブラウザを自動で開く処理のためには、ユーザレベルでivmanを起動する方が良い。

まずユーザレベルで実行して${HOME}/.ivman/のファイルを生成しておく。

$ ivman
manager.c:1383 (do_startup_configure) Directory /home/<ユーザ名>/.ivman/ will be used for configuration files.
manager.c:450 (ivm_test_configs) Settings directory does not exist, attempting to create it...
manager.c:786 (ivm_run_command) Running: /bin/mkdir -p /home/<ユーザ名>/.ivman/
manager.c:505 (ivm_test_configs) Configuration file /home/<ユーザ名>/.ivman/IvmConfigActions.xml not found, creating one with default content...
manager.c:505 (ivm_test_configs) Configuration file /home/<ユーザ名>/.ivman/IvmConfigBase.xml not found, creating one with default content...
manager.c:505 (ivm_test_configs) Configuration file /home/<ユーザ名>/.ivman/IvmConfigProperties.xml not found, creating one with default content...
manager.c:505 (ivm_test_configs) Configuration file /home/<ユーザ名>/.ivman/IvmConfigConditions.xml not found, creating one with default content...
(CTRL+Cで停止)

${HOME}/.ivman/IvmConfigActions.xml自動起動の設定を追加。「」の直前に以下を追記。

<ivm:Match name="hal.info.product" value="POKEN">
    <ivm:Option name="exec" value="xdg-open $hal.volume.mount_point$/Start_Poken.html" />
</ivm:Match>

xdg-openがない場合はfirefoxなどに適宜変更。

あとは起動時に自動起動するようにすれば良い。例えば${HOME}/.xprofileに、

ivman-launch &

ivman-launchがなければivmanで。

ivman &

これでPokenを挿せばブラウザで管理画面が自動的に開くはずです。

その他

autorun.infと同じ働きをするautorun.shが用意されれば、GNOMEユーザはivmanは不要かも。一応autorun.sh作って!とfeedback連絡済。