Hatena::Diary

kurainの壺

2009-12-28

ちょっと業務のテスト

| 11:09 | ちょっと業務のテスト - kurainの壺 を含むブックマーク はてなブックマーク - ちょっと業務のテスト - kurainの壺 ちょっと業務のテスト - kurainの壺 のブックマークコメント

業務中なんです><

2009-12-14

scriptタグの罠メモ

12:33 | scriptタグの罠メモ - kurainの壺 を含むブックマーク はてなブックマーク - scriptタグの罠メモ - kurainの壺 scriptタグの罠メモ - kurainの壺 のブックマークコメント

script タグで外部Javascriptファイルを読み込むときは、charset 属性で外部ファイルの文字コードを指定出来る。

指定しておかないと、読み込み元と文字コードが異なるときに日本語が化けてしまう。

charset="utf8" と適当に書いても、firefoxではきちんと動くのだが、 IEだと、文字化けしてしまう。正しくは charset="utf-8" らしい。

2009-12-11

appengine-jrubyでハマったメモ

00:24 | appengine-jrubyでハマったメモ - kurainの壺 を含むブックマーク はてなブックマーク - appengine-jrubyでハマったメモ - kurainの壺 appengine-jrubyでハマったメモ - kurainの壺 のブックマークコメント

GoogleAppEngine + JRubyでクリスマスまでに彼女をつくる方法 : tech.kayac.com - KAYAC engineers' blog GoogleAppEngine + JRubyでクリスマスまでに彼女をつくる方法 : tech.kayac.com - KAYAC engineers’ blog

や、

appengine-jrubyで簡単GAE/JRuby開発 - しばそんノート appengine-jrubyで簡単GAE/JRuby開発 - しばそんノート

などをみて、appengine-jruby楽しそうだなーと思って使い始めたのだが2点はまった。

1点目

準備として google-appengine という名前の gem を sudo インストールする。

  sudo gem install google-appengine

こんな感じ。だが、何故かインストールされるライブラリの権限が 700 などになっていて一般ユーザーでからは使えない。

su権限でならちゃんと使えるのだがいろいろ気持ち悪いので、

$ /usr/lib/ruby/gems/1.8/gems/appengine-*/lib/*

以下の権限を 644 とかに変えるといい感じに動く。

2点目

appengine-jruby の開発用サーバーが、

$ dev_appserver.rb .

で、port 8080 で起動するのだが、 localhost からしか繋がらない仕様らしい。なので vmware server などで起動しているとホストOSのブラウザから接続できない。なので、sshのポートフォワードなどで対応すると良い。

$ dev_appserver.rb --adress=0.0.0.0 .

として起動すると、どこからでも入れるっぽい。 adress の値はマスクかな・・・

このハマリポイントの原因が OS依存のものかと思って、centos 5.2 とか ubuntuとかいろいろ試してしまったが、とりあえず手元の CentOS 5.2 でうまく動いている。

2009-11-21

EeePC 901-16Gにchronium osを入れてみた。

11:03 | EeePC 901-16Gにchronium osを入れてみた。 - kurainの壺 を含むブックマーク はてなブックマーク - EeePC 901-16Gにchronium osを入れてみた。 - kurainの壺 EeePC 901-16Gにchronium osを入れてみた。 - kurainの壺 のブックマークコメント

7秒で起動できるという噂のchroniumだが本当なのか検証してみた。

前のエントリーで紹介した方法で、EeePCにインストール。起動する動画がこちら。

7秒でログイン画面まで何とか行ってるかな。というところ。ブラウザにgmailがでるまで20-30秒はかかっているだろう。まあ、マシンもちょっと古めだし十分及第点だとおもうけれども。

じっさいにはてなブックマークなどを表示してみたのがこちら

window切り替え機能などもあるんだけれど、けっきょく切り替わるwindowもブラウザという仕様。未来っぽいといえば未来っぽいのかもしれない。

Chronium osは本当にブラウザしかないLinuxという感じで、ブラウザ以外のことは何もできない。一応ターミナルに入る事はできるけれど一般ユーザーを考えての事ではないだろう。

ログインからしてgmailのアカウントを使うなどネットワークにつながっていることが前提なのに、EeePC 901ではWifiが標準ではつかえない。なので有線で実験している。無線の暮らしになれているのでこれはかなり苦痛。逆に無線が使えればかなりよいセカンドマシンになりそうな気もするので、どうにかカーネル等をいじってみようかなとも思う。

ブラウザですべてをまかなうというプランは、古くはSunのJava applet、最近だとMicrosoft .Netの最初の頃のイメージがあってうまくいかなかったものだが、Googleはそこも乗り越えて行くのだろうか。いまほど無線の高速ネットワークが発達している時代は今まで無かったわけだし、サーバー側の計算資源も今ほど大きくなっている時代は無いだろう。そういう意味では期待できると思うし、自分もなにかチャンスをつかみたいと思う。

が一方で、X Window端末が大型機にぶら下がっていた時代に戻るようにも見えるわけでまた、逆の方向、クライアントが強力になる方向にいつかより戻されるのではないかという気もしている。

chrome OSが公開されたので buildしてみる

10:58 | chrome OSが公開されたので buildしてみる - kurainの壺 を含むブックマーク はてなブックマーク - chrome OSが公開されたので buildしてみる - kurainの壺 chrome OSが公開されたので buildしてみる - kurainの壺 のブックマークコメント

gdgtというサイトに、イメージがあるんだけど、セキュリティ的によろしくないじゃない?と先輩に言われたのでビルドしてみる事にする。なぜ、セキュリティ的によろしくないのかはまだよく分からない。

といことで、昨日から一晩かけて chronium osのbuildとEeePCへのインストールをしてみた。

結論から言うと、VM Ware上でビルドするのは大変(処理速度的な意味で)。EeePC 901の上でも動くが、Wifiが今のところ使えない。

ブラウザの速度的には普通に快適だった。

以下、ビルドしてみたい人の参考にはなると思う。

参考ページ

Getting and Building a Chromium-Based OS (The Chromium Projects)

必要なことは、全部ここに書いてあるので、まあそんなに難しくは無いと思われる。

Chromium osをコンパイルしてみる - 崩壊現実-全てはvirtualに収束する-

先にビルドに成功している方。やり方が簡潔にまとまっているので、手順を参考にするならこちらの方がよいかも。

ビルド環境

Ubuntu 9.10 がビルド環境にお勧めお勧めされている。つい先日発表になった最新版である。手元に9.04の環境ならあったのでそれで大丈夫だろー。とか思ったら、 gprefのバージョンが合わなくてアップグレードすることになった。アップグレードは大変なのでこれからビルド環境をつくるなら素直に9.10をクリーンインストールするべきだろう。

ビルド準備

LinuxBuildInstructionsPrerequisites - chromium - Prerequisites for building. - Project Hosting on Google Code

ここに、必要なパッケージとバージョンが書いてあるので一応それを確かめよう。Ubuntu 9.10なら全部大丈夫だろう。な。まさか。

下にあげたパッケージはubuntuをインストールするだけでは入らないので、apt-get install hoge でインストールする。

  • g++
  • g++-multilib
  • bison
  • flex
  • gpref
  • libnss3-dev
  • libasound2-dev
  • libgconf2-dev
  • libgtk2.0-dev
  • msttcorefonts
  • freetype-dev

ソースを手に入れる

tarballでも良いのだけれど、せっかくなので俺は赤いGitを選ぶぜ。

と思ったら、depot-toolsがいるらしい。

Install the depot_tools (The Chromium Projects)

svnでインストールするので、svnもインストール。そして、depot-toolsも。

$ sudo apt-gte install subversion
$ svn co http://src.chromium.org/svn/trunk/tools/depot_tools
$ export PATH=`pwd`/depot_tools:"$PATH"

で、git に戻る。

$ mkdir [chromiumos]
$ cd [chromiumos]
$ gclient config http://src.chromium.org/git/chromiumos.git
$ gclient sync

これでソースが手元に。遅い・・・・。

chromium(ブラウザの方)のソースも必要なようだ。また時間がかかりそうだなあ・・・。と思ったら無くても良いらしい。最新版で組みたい人は、落とせとのことらしい。

buildするぜ。

ln -s src/chromiumos/chromiumos.git chromiumos

これはやらなくても良いのだが、マニュアルにディレクトリを合わせる。

$ cd chromiumos/src/scripts/
$ ./make_local_repo.sh

localのリポジトリが作られる。ずいぶん時間がかかる・・・。

chromeos はchroot環境にしか作れないらしいので、chroot環境を作る処理を始めるやってることはいわゆるdebootstrapのように見える。

$ ./make_chroot.sh

続いて、ブラウザの方のchromeを組み込むためにバイナリを用意する。自分でコンパイルしても良いのだが、ソースを用意するのがけっこう手間そうだったので用意されているバイナリを利用することにする。と思ったのだが、解説ページのバイナリへのリンクは403になっているのであきらめて、自分でビルドすることにする。

chromeの準備

ソースをゲット
cd ~/src
mkdir chromium
cd chromium
gclient config http://src.chromium.org/svn/trunk/src
gclient sync

trunkは時々バギーな状態になっているので、チェックすべきらしい。

http://build.chromium.org/buildbot/waterfall/

を見て一番上のステータスがOPENになっていたら、問題なし。closeになっていたら問題があるので直るまでまつか、問題ないリビジョンでチェックアウトする。

chrome のビルド

./build_chrome.sh --chrome_dir ~/chromium

ここでうまくいかなくて、悩んでいたら、先のバイナリが手に入るようになったので、そっちを使うことに変更。

$ cd ~/src
$ wget http://build.chromium.org/buildbot/archives/chromium-chromiumos-r32516/chrome-linux.zip
$ mkdir -p ~/chromiumos/src/build/x86/local_assets
$ cp chrome-linux.zip ~/chromiumos/src/build/x86/local_assets

いよいよビルド

$ cd ~/chromiumos/src/scripts
$ ./enter_chroot.sh  #chroot環境へ入る
(chroot)$ cd ../platform/pam_google && ./enable_localaccount.sh USERNAME
(chroot)$ ./set_shared_user_password.sh  
(chroot)$ ./build_platform_packages.sh
(chroot)$ ./build_kernel.sh
(chroot)$ ./build_image.sh

cd ../platform/pam_google && ./enable_localaccount.sh USERNAME

この行は本来非推奨なのだけれど、USERNAMEで chromium osにログインできるようにするため処理。

これをしておかないと、chromium osはgmailアカウントでログインするため、ネットワークにつながらないときにログインできない。後述する、EeePCなどの実機に入れるところで必要になる


set_shared_user_password は root パスワードのようなものを設定するものと思っていてよさそう。

なので、これが勝手に設定されているgdgt とかの野良パッケージは危ないのでは?とかいわれてるんだろうなー。

これでビルド完了。~/chromiumos/src/build/image/SUBDIR にイメージができあがる。

vmware 用のイメージに変換するときは

./image_to_vmware.sh --from=~/chromiumos/src/build/images/SUBDIR

さらに、インストール用USBメモリも作ることにした。4GB以上のUSBメモリが必要だ。

./image_to_usb.sh --from=~/chromiumos/src/build/images/SUBDIR --to=/dev/USBKEYDEV

USBKEYDEVは普通はsdb になる。USBメモリがどのブロックデバイスとして認識されたかは、mount df などコマンドで確認すればよい。USBKEYDEVはsdb1などのパーティションではなく、デバイス全体を与えるので sdb と与えればよい。

usbブートは何度も痛い目にあってるから正直心配なのだが、うまくいくかな。

ばっちり usbブートに成功。


起動に成功する EeePC 901-16G

f:id:r_kurain:20091121105134j:image:w500

つづいて、本体のSSDにインストール

  • Ctrl+Alt+T でTerminalを立ち上げて
  • /usr/sbin/chromeos-install

これで、本体のSSDから起動できるようになる。

はまりポイント

  • shared user パスワードは設定しておくこと。でないと sudo できない。
  • gmail以外のアカウントでもログインできるようにしておくこと。ネットワークにつなげられなくても動作確認はできる。

2009-09-17

サマーウォーズ風スクリーンセーバー Mac版

01:43 | サマーウォーズ風スクリーンセーバー Mac版 - kurainの壺 を含むブックマーク はてなブックマーク - サマーウォーズ風スクリーンセーバー Mac版 - kurainの壺 サマーウォーズ風スクリーンセーバー Mac版 - kurainの壺 のブックマークコメント

id:haiji505 さんからリクエストがあったのに今まで気づきませんでした。すいません><。

Mac版も用意しましたのでどうぞご利用ください。

  • 例によって無保証です
  • ウィルスチェックについても、無保証です。
  • 圧縮されていますので解凍したうえで、実行してください。
  • インストーラ形式になっています。

SWWorldClock.zip 直

haiji505haiji505 2009/09/18 01:48 わーい!ありがとうございますっ
早速設定しますた★

machimachi 2009/09/18 22:34 こちらの記事あること知らず、前回記事にMac版要望してしまいました(汗
でも、ありがとうございます!

hashizohashizo 2009/09/21 23:15 fla:verのMacOS 10.6(Snow Leoperd)が出ましたら、ぜひお願いいたします。m(__)m