ゲストOSを固定IPアドレスにして、ホストOS以外から接続を受け付ける場合の設定方法がわかったのでメモ。
VMWare Fusionのバージョンは4.1.1
設定ファイルが/Library/Preferences/VMware\ Fusion/networkingにあるのでこれを編集。
このファイルにしたがってVMWare起動時に追加されるvmnet1,vmnet8のIPアドレスとかがが決まる。
以下の設定をnetworkingに追記して、仮想インターフェースを追加する。
VNET_2_VIRTUAL_ADAPTER_ADDRはゲストOSで設定した固定IPと合わせる。
VNET_2_HOSTONLY_NETMASK, VNET_2_HOSTONLY_SUBNETはHOSTONLYモード用!?だから不要かと思ったけど記述しないとVMNET_2を認識してくれないので、VNET_1のをとりあえずコピー。
VNET_3_xxxxxxxとかもOKだからVNET_4、VNET_5とかもいけそう。
設定が終わったらOSを再起動。なんか他の方法もありそうだけど、VMWareの再起動だけだとダメ。
再度VMWareを起動後、ifconfigの結果にvmnet2が追加されていればOK。
次にゲストOSでどの仮想インターフェースを使用するか設定。
仮想マシンのイメージ内にある拡張子が*.vmxのファイルを開いて以下を追記する。
vmnet*はifconfigで追加されたインターフェース名にする
なんかこの辺の設定方法とかどこかにまとまってるのかな、、、。
Tip #3: Adding additional networks to VMware Fusion 4を見つけてようやくできた。
メンドイからGUIから設定させて欲しいな。
beatspace.log
2012年3月27日火曜日
2012年3月24日土曜日
Digest認証エリアをcapybara-webkitでキャプチャする
Digest認証が設定しているサイトでスクリーンショットを撮りたい。
「capybara-webkitでwebページのスクリーンショットを撮る」を見つけたのでこれを使うことにした。
ヘッダーを操作メソッドがあるので、Digest認証もなんとかなるかと思ったけどダメだった。
cnonceの生成にリクエストするuriが含まれるので、CSSや画像を取得する際に401 Not Authorizeになっちゃう。
GET /auth/area/index.html HTTP/1.1
-> 200 OK
GET /auth/area/style.css HTTP/1.1
-> 401 Unauthorized
GET /auth/area/header.jpg HTTP/1.1
-> 401 Unauthorized
ってな具合。リクエスト毎に変えなくちゃだめって事だな。
capybara-webkiのissuseで認証はどうするの?的な話があったけど、
ヘッダーの設定で対応できるでしょってことでクローズされてる。
capybara-webkitのrubyソースいじってもどうにもならなそうなので、QTWebKitを調べると、
authenticationRequiredというシグナルがあり認証が必要な場合をハンドリングできそう。
で、認証をハンドリングできたのでAuthorizeコマンドとして実装してみた。
ソースはこちら。cloneしてextconf.rbを実行すればOK.
https://github.com/beatspace9/capybara-webkit/tree/digest-auth
上記を
利用方法。
5行目はgitでcloneしたリポジトリを利用するようパスを書き換える必要ある。
22行目でユーザー名とパスワードの設定
「capybara-webkitでwebページのスクリーンショットを撮る」を見つけたのでこれを使うことにした。
ヘッダーを操作メソッドがあるので、Digest認証もなんとかなるかと思ったけどダメだった。
cnonceの生成にリクエストするuriが含まれるので、CSSや画像を取得する際に401 Not Authorizeになっちゃう。
GET /auth/area/index.html HTTP/1.1
-> 200 OK
GET /auth/area/style.css HTTP/1.1
-> 401 Unauthorized
GET /auth/area/header.jpg HTTP/1.1
-> 401 Unauthorized
ってな具合。リクエスト毎に変えなくちゃだめって事だな。
capybara-webkiのissuseで認証はどうするの?的な話があったけど、
ヘッダーの設定で対応できるでしょってことでクローズされてる。
capybara-webkitのrubyソースいじってもどうにもならなそうなので、QTWebKitを調べると、
authenticationRequiredというシグナルがあり認証が必要な場合をハンドリングできそう。
で、認証をハンドリングできたのでAuthorizeコマンドとして実装してみた。
ソースはこちら。cloneしてextconf.rbを実行すればOK.
https://github.com/beatspace9/capybara-webkit/tree/digest-auth
上記を
利用方法。
5行目はgitでcloneしたリポジトリを利用するようパスを書き換える必要ある。
22行目でユーザー名とパスワードの設定
2011年7月2日土曜日
rubyで使えるtwitterライブラリ (tweetstream編)
Streaming APIが使えそうなtweetstreamを見てみる。
どうやらtwitter-streamをラップしたものっぽい。
とりあえずEventMachine::runとか書かなくていいのと、デーモン化できる。
ただし、公開ストリームだけでusersteramは使えないっぽい。
どうやらtwitter-streamをラップしたものっぽい。
とりあえずEventMachine::runとか書かなくていいのと、デーモン化できる。
ただし、公開ストリームだけでusersteramは使えないっぽい。
rubyで使えるtwitterライブラリ (twitter-stream編)
とりあえずメジャーっぽいのを調査。
http://ruby-toolbox.com/のAPIカテゴリからtwitter関連を拾って試してみる
まずはtwitter-stream
eventmachineのEventMachine::Connectionを継承した作りになってる。
on_itemにブロックを渡すと、ツイートを読み込むたびに、コールバックしてくれる。
そのた、on_error, on_reconnectなどがあり。
サンプルでuserstreamが使えるようオプションを調べてみた結果、
デフォルトが公開ストリームを見に行くようになっていた。
そのため、host, path, port, sslとoauthオプションを変更すればOK
http://ruby-toolbox.com/のAPIカテゴリからtwitter関連を拾って試してみる
まずはtwitter-stream
eventmachineのEventMachine::Connectionを継承した作りになってる。
on_itemにブロックを渡すと、ツイートを読み込むたびに、コールバックしてくれる。
そのた、on_error, on_reconnectなどがあり。
サンプルでuserstreamが使えるようオプションを調べてみた結果、
デフォルトが公開ストリームを見に行くようになっていた。
そのため、host, path, port, sslとoauthオプションを変更すればOK
2011年1月19日水曜日
XcodeでOpenCV2.2を使用するまで
1. OpenCV-2.2.0.tar.bz2をダウンロードして解凍する。
2. CMakeを起動して「Browse Source...」から展開したディレクトリを指定し、
「Browse build..」でビルドするディレクトリを指定する。
3. 「Configure」ボタンをおして「Unix Makefiles」を選択して「Done」
4. 実行が終わったら、インストール先を変更したいのでCMAKE_INSTALL_PREFIXを/usr/local/opencvに修正
5. 再度「Configure」ボタンを押して、実行が終わると「Generate」ボタンが押せるようになるので「Generate」を押す。
6. Terminalで/usr/local/src/OpenCV-2.2.0/buildへ移動してmakeする。
7. sudo make installで/usr/local/opencv以下へインストールする。
8. XCodeで「Command Line Tools」テンプレートでプロジェクトを作成。(opencv2.2_sampleというプロジェクト名にした)
9. プロジェクトの設定画面でターゲットのアーキテクチャを指定
10. OpenCVのヘッダをインクルードパスに追加
11. プロジェクトを右クリック、「追加」-> 「新規グループ」でOpenCVというグループを作成し、プロジェクトを右クリック、「追加」-> 「既存ファイル」から/usr/local/opencv/lib以下にある、libopencv_highgui.dylibとlibopencv_core.dylibを追加する。
12. main.cppを修正
コマンドライン引数で指定したファイルの幅、高さを表示するプログラム。
13. ビルド 14. コマンドライン引数を指定する。
15. 実行して画像の幅、高さが表示されるか確認
2. CMakeを起動して「Browse Source...」から展開したディレクトリを指定し、
「Browse build..」でビルドするディレクトリを指定する。
3. 「Configure」ボタンをおして「Unix Makefiles」を選択して「Done」
4. 実行が終わったら、インストール先を変更したいのでCMAKE_INSTALL_PREFIXを/usr/local/opencvに修正
5. 再度「Configure」ボタンを押して、実行が終わると「Generate」ボタンが押せるようになるので「Generate」を押す。
6. Terminalで/usr/local/src/OpenCV-2.2.0/buildへ移動してmakeする。
7. sudo make installで/usr/local/opencv以下へインストールする。
8. XCodeで「Command Line Tools」テンプレートでプロジェクトを作成。(opencv2.2_sampleというプロジェクト名にした)
9. プロジェクトの設定画面でターゲットのアーキテクチャを指定
10. OpenCVのヘッダをインクルードパスに追加
11. プロジェクトを右クリック、「追加」-> 「新規グループ」でOpenCVというグループを作成し、プロジェクトを右クリック、「追加」-> 「既存ファイル」から/usr/local/opencv/lib以下にある、libopencv_highgui.dylibとlibopencv_core.dylibを追加する。
12. main.cppを修正
コマンドライン引数で指定したファイルの幅、高さを表示するプログラム。
#include <iostream> #include <opencv2/highgui/highgui.hpp> using namespace cv; using namespace std; int main(int argc, char* argv[]) { Mat img = imread(argv[1]); cout << "width:" << img.cols << endl; cout << "height:" << img.rows << endl; }
13. ビルド 14. コマンドライン引数を指定する。
15. 実行して画像の幅、高さが表示されるか確認
2011年1月16日日曜日
登録:
投稿 (Atom)