Gauche-rfbがヤバイ

gauche.nightで小黒さんによってデモが行われ、会場を大いに沸かせたGauche-rfbのパッケージが公開されたのでいじってみた。

  • rfb-initを:portキーワード付きで実行すると簡易ウェブサーバが起動するので、適当な番号を指定する(※インターネットに接続しているマシンは、全インターネットの不特定多数に対して公開してしまわないように注意!)。
    • 簡易ウェブサーバ機能が不要なら、:portキーワード無しにして、直接vncクライアントで接続してもok。
  • 上記は簡易ウェブサーバ用のportで、本体であるrfbプロセスには、vnc protocolでport 5900(+ディスプレイ番号)で接続するので、もし他の誰かに公開したりする場合は、このportを空けておく(※これも同様に、全インターネットに公開してしまわないように注意!)。
  • あとは、examplesに入っているサンプルスクリプトを動かしたり、それをベースに改造して遊んでみたり。


これが、すごく楽にグラフィカルなネットワークアプリを作れる。
サンプルの黒板をベースに、お絵描きチャットを作ったりがあっさりできた。


これは、Gaucheの猛烈なキラーアプリになると確信。


自分の感じた魅力的な点を列挙。

  • インストールしたら、(use rfb)してから(rfb-init ...)すればプロセス初期化は完了。ややっこしいところは全然無い。
  • vncプロトコルかつ、ウェブサーバ機能内蔵なので、クライアント側はflashの動くブラウザさえあれば万事ok。
  • vncベースなので、複数のクライアントが同時に一つのrfbプロセスにアタッチできる(クライアントの区別もしっかりできる)。
  • クライアントからマウスイベント/キーボードイベントがリアルタイムに送れる。当然、どのクライアントが送ったのかの認識もバッチリ。
    • 但し、表示される画面はどのクライアントでも共通なので、そういう用途に上手く使うには少し工夫が必要そう。


何というか、vncプロトコルで構築されている為、これさえあればグラフィカルな仮想osすら作りきれる、と感じさせられた。