changelog

日々の出来事とか。

今週のお題「名前」

ふとhatenablogをみてみると、今週のお題なるものが・・・。

はてなダイヤリーでは、id:promland を使っていましたが、ほとんどネット上ではaqua0906を使ってます。

由来は、mac os xのデスクトップ環境のaquaから。

 

初めて、OS X のaquaデスクトップ環境を見て衝撃を覚えたのが、2000年9月6日だったのです。

xcode 2台目以降のmacで実機検証するには

iOS Developer Programのアクティベーションが無事に終了したので、いろいろと触っているが、母艦のimacの方の作業が疲れるので、macbookの方でソファに座りながら開発もしたいと思ったので環境を作ってみた。

Xcodeを起動して、オーガナイザを起動する。

左メニューで、「Developer Profile」を選択して、下にある[Export]を押すと、パスワード設定画面ができるのでパスワードを設定して保存。

保存したファイルをmacbookへ転送し、同様にXcodeを起動して、オーガナイザを開く。

次は、DeveloperProfile画面で[Import]を選び、さきほどエクスポートしたファイルをインポートする。インポートの際にパスワードを聞いてくるので、エクスポートの際に設定したパスワードを入力すれば無事にインポートされ、2台目以降のmacでも実機検証が可能になる。

emacs23.4が出ていたので、23系に変えてみた。

emacsformacosx.comでバイナリが配布されているが、今回は、ソースからビルドすることにした。
Lionでは、メニューバーが表示できない不具合がある。
幸いなことにtypesterさんがgithubにパッチをアップしてくれているので、取得する。

$ wget https://github.com/downloads/typester/emacs/emacs-23-lion-fullscreen-test.patch

インラインIMEパッチを取得。

$ wget http://jaist.dl.sourceforge.jp/macemacsjp/45818/inline_patch-23.1.92-b1.tar.gz

emacs23.4を取得。

$ wget http://core.ring.gr.jp/pub/GNU/emacs/emacs-23.4.tar.gz

取得したemacsのソースに各種パッチを当てる。

$ tar xzvf emacs-23.4.tar.gz
$ tar xzvf inline_patch-23.1.92-b1.tar.gz
$ cd emacs-23.4
$ patch -p1 < ../emacs-23-lion-fullscreen-test.patch 
$ patch -p0 < ../inline_patch-23.1.92-b1/emacs-inline.patch

$ ./configure --with-ns --without-x
$ make bootstrap
$ make install

"make bootstrap"は、同梱されているelispファイルをすべてバイトコンパイルするオプションで、結構時間がかかる。

ビルドが完了すると、nextstep/emacs.appが作成されるので、Applicationディレクトリへコピーして起動。

22の時に使っていた.emacsの設定もすべてが使えるわけではなさそうなので、これから調査します。

node.jsをCentOS 5.7にインストール(さくらVPS)

node.jsをCentOS 5.7にインストールしてみた。
サーバは、さくらVPSを利用しているのだが、公式サイトからソースをダウンロードしてインストールしてみたが、
次のエラーが出てインストールが出来なかった。

# ./configure --prefix=/usr/local/nodejs

# make
Waf: Entering directory `/home/tomoyuki/src/node-v0.6.7/out'
DEST_OS: linux
DEST_CPU: x64
Parallel Jobs: 1
Product type: program
[ 4/35] uv: deps/uv/include/uv.h -> out/Release/deps/uv/uv.a
make[1]: ディレクトリ `/home/*****/src/node-v0.6.7/out/Release/deps/uv' に入ります
rm -f src/ares/*.o
rm -f src/unix/ev/*.o
rm -f src/unix/eio/*.o
rm -f src/unix/*.o
rm -rf test/run-tests.dSYM run-benchmarks.dSYM
rm -f -f src/*.o *.a test/run-tests test/run-benchmarks
make[1]: ディレクトリ `/home/********/src/node-v0.6.7/out/Release/deps/uv' から出ます
make[1]: ディレクトリ `/home/********/src/node-v0.6.7/out/Release/deps/uv' に入ります
/usr/bin/gcc --std=c89 -pedantic -Wall -Wextra -Wno-unused-parameter -D_GNU_SOURCE -Iinclude -Iinclude/uv-private -Isrc/unix/ev -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Isrc/ares/config_linux -Isrc  -g -c src/unix/core.c -o src/unix/core.o
src/unix/core.c: In function ‘uv__accept’:
src/unix/core.c:739: error: ‘SOCK_NONBLOCK’ undeclared (first use in this function)
src/unix/core.c:739: error: (Each undeclared identifier is reported only once
src/unix/core.c:739: error: for each function it appears in.)
src/unix/core.c:739: error: ‘SOCK_CLOEXEC’ undeclared (first use in this function)
make[1]: *** [src/unix/core.o] エラー 1
make[1]: ディレクトリ `/home/********/src/node-v0.6.7/out/Release/deps/uv' から出ます
Waf: Leaving directory `/home/********/src/node-v0.6.7/out'
Build failed:  -> task failed (err #2): 
	{task: uv uv.h -> uv.a}
make: *** [program] エラー 1

色々と調べていると、Fedora/RedhatEL系向けのRPMパッケージを発見したのでインストールしてみた。

RPMリポジトリをインストール

# wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm
# yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm

これでyumを使ってnodejsがインストールできるようになるので、以下を実行。

# yum install nodejs

夜も遅くなったので、今日はここまでで。

gitサーバ構築メモ

共同開発をすることになったので、ソース管理にgitを使うことにした。

忘備録も兼ねてメモ。

gitの共用リポジトリ作成(サーバ上で実行)

$git --bare init --shared

ローカルでgitリポジトリ作成してコミット

$ mkdir repos
$ cd repos
$ git init
$ git add .
$ git commit -m 'first commit'

ローカルリポジトリをサーバにpush

$ git remote add origin ssh://*****@example.com:/foo/bar.git
$ git push origin master

gitプロトコル

gitプロトコル(git://)を使うには、git-daemonを使う方法がある。
サーバ上にrpmforgeをインストールして、yumのリポジトリとして追加。

# yum install git-daemon

/etc/xinetd.d/gitを編集して、リスタート

google developerday 2011に参加してきた。

久しぶりの上京。

GDD2011のDevquizに通ったこともあり、当初はBootCampから参加してがっつりandroidやろうと10月29日〜11月2日まで滞在する予定だったけど、仕事の都合でどうしても31日が出勤しないといけなくなった。

結局、BootCamp参加のために29日上京、GDD2011に参加のために1日上京と、ハードスケジュールになってしまいました。

Bootcampでは、あんざいゆきさんの「Fragmentを使ってみよう」に参加。
ハンドセットとタブレット端末の画面レイアウトの切り分けの基本が分かった。
実際、今携わっているandroidの案件でも利用できそうなので、これは抑えておこうと思った。

次に参加したのは、江川さんの「Spike WebView & Tough ICS

標準ブラウザのソースを覗いてみる機会もあり、Andoroidのソースの方も覗いてみようと興味が持てた。

休憩時間中、何度か喫煙コーナーまで誘導してくれたgooglerの方、ありがとうございました。

この後、懇親会が行われたけど、帰りの寝台の時間があったので早々に帰路につきました。

31日の夜行バスに乗り込み、横浜へ。
29日の交通手段はサンライズ瀬戸だったので、横になってゆっくりとこれたけど、バスはやっぱりしんどい。
でも、往復で17000円しかかからないのは、すごい魅力。

基調講演では、android,HTML5,google+への取り組みが紹介されたけど、中でもHTML5の実演デモが多かった。

WebAudioを使ったデモではブラウザでシンセサイザーでドラムの演奏ができたり、WebGLを使ったデモでは、3D本棚、GoogleBooksへの連動となど、さらには締めくくりのigniteでも、スマホ・ノートPCを振ったりして楽しめるアプリなど(いい表現が見つからないw)
chromeをベースとしたネイティブアプリを置き換えてしまうようなものばかりで、
HTML5の強烈さを改めて感じました。

ICSからは、Wifi-Direct、アドホックなどが使えるようになるので、さらにアプリの幅が広がりそう。
今、プライベートで制作しているアプリもこのあたりのAPIは必須なので、早めに身につけよう。

今年は、昨年と違って参加者同士の交流が持てるような配慮もかなりなされていて、DeveloperLinkやバッジ交換など、参加型のイベントがあったのでよかったけど、セクションの合間が15分くらいしかないので、ちょっと時間が足りない感が。。。
バッジ交換は、何が貰えるのか気になったので頑張ってコンプリート。
結果、GTUGの帽子がもらえました。

最後まで大盛り上がりの一日でした。
来年も参加できるようにがんばってみよう。

近況。

しばらくブログを書かないうちに、日記のインタフェースが変わってますね。
あえてここで言う話ではないですが、はてブからdeliciousにブックマークを引っ越しました。
最近、ブックマークすると再試行になる頻度がすごく高い。。。
これまでは、何気なく使ってたが、レスポンスって大事だなと思わされた。
改善されてきたら、また戻ってくるつもり。

gddのdevQuizに参加してみました。
時間もない中で、がんばって解いたが、パックマンはlv1しかクリアできず。
記念にgithubにソース上げておきます。(敵が若干仕様と違う動きしてますが汗)

スパハカ枠は間違いなく無理でしょうね。。