色々試行錯誤した結果、Slingboxでアプリケーションを作ることができました。
ActiveScaffold (旧AjaxScaffold)で作った簡単なアドレス帳をサンプルアプリケーションにSlingshotの使い方を見てみましょう。
作業その0 元となるRailsアプリケーションを作る
今回は元となるアプリケーションはActiveScaffoldで、さくっと作ってみます。
$ rails slingshot1 -d sqlite3
$ cd slingshot1
./script/plugin install http://activescaffold.googlecode.com/svn/tags/active_scaffold
$ ./script/generate model address name:string address:string mail:string
$ rake db:migrate
$ ./script/generate controller address
$ echo “class AddressController < ApplicationController;active_scaffold :address;end" > app/controllers/address_controller.rb
$ echo ‘
< %= yield %>‘ > app/views/layouts/application.rhtml
$ rm public/index.html
$ echo “ActionController::Routing::Routes.draw { |map| map.connect ”, :controller => ‘address'; map.connect ‘:controller/:action/:id’ } ” > config/routes.rb
これでサンプルアプリケーション構築完了。
これをSlignshotを使ってブラウザ無しでうごかしてみましょう。
作業その1 データベースはSQLite3にする
今回はサンプルアプリケーションのDBがSQLite3だったので問題ありませんが、既存のアプリケーションでMySQL等を使っている場合には、SQLite3にコンバートしてください。
たぶん、MySQLでも動くんですが、それだと別にMySQLサーバのセットアップが必要になるので、インストールの要らないSQLite3を推奨しているようです。
作業その2 Slingshotをダウンロード
現在はSubversionでしか提供されていないので、svnでダウンロードします。
$ svn export http://svn.joyent.com/slingshot/osx
作業その3 VirtualMachine(VM)にアプリをセット
先に作ったRailsアプリをVMにセット。
$ cp ~/slingshot1/* osx/VM/trunk/
作業その3 VMをSlingshot.appに移動
アプリをセットした、VMをSlingshotの中に移動
$ mv osx/VM osx/Slingshot.app/
完成

これで完成。Slingshotアイコンをダブルクリックするとアプリケーションが起動します。
今回ファーストリリースだけあって、起動したり、しなかったりと、かなり不安定な所があります。
とりあえず、内部で3000番ポートでmongrelを起動しているので、他で3000番ポートを使ってると、起動できません。
とりあえず、安定さえすれば、簡単にデスクトップアプリが作ることができそうです。
Slignshotの特徴は、サーバとのデータ連係とドラックアンドドロップサポートなので、次はこれを試してみたいです。まだドキュメントされていませんが、アプリケーションの最新版のチェックと自動アップデートの仕組みもあるみたいなので、これからが楽しみです。
おまけ
できあがったファイルは、これです。Intel OSX専用です。そのうちWin版も作ります。