2009年6月30日火曜日

IONノート(その3)

すっかりとIONノートを気に入ってしまった。

このノートの画面サイズは12.1インチモニタで1368x768、S101の10.2インチで1024x600よりちょっと広いだけなんだけど、すごく広く感じる!!GNOME&Compiz Fusionの組み合わせも普通に動いてると思う。

不満は、、、無線LANがよく切れちゃうことかなぁ。。
lspciするとAtheros Communications Inc. AR9285 Wireless Network Adapterって出てて、ドライバはath9kでS101とおなじやつ。S101と違うのは、iwlistとかのスキャンはちゃんと出きるし、アクセスポイントにすんなり繋がるんだけど、暫くすると接続がきれちゃうっぽい、、windozeの方でも同じような感じで、こっちはS101の時よりも繋がりも通信速度もなんとなくイマイチ。。。
もうひとつは、ノート用の2Gメモリが一個余ってた。ドスパラのページのスペックみてみると、メモリ最大4Gとか書いてるから、メモリのスロットがもう一個あるんだろうとおもって、裏蓋あけてみたら、確かにメモリ用の空きスロットらしいところがあったので、取り付けてみたんだけど、どうも上手く認識してくれない、、、相性がわるいのかな、、、

2009年6月29日月曜日

IONノート(その2)



実はS101ではGNOMEを一回も試してなかった。S101のWikiとかみると、GNOMEとかやめといた方がいいよ的なコメントがあったから、、だから、入れたらどれくらいの重さなのかわからないんだけれど、とりあえずIONノートはグラフィック処理がお得意っぽいし、ATOM330はデュアルコアなので、ちっちゃいノートでもきっと大丈夫だろうと思いGNOME入れてみた!

Xorg導入して、GNOMEインストールして、UIM入れて、、割とあっさり、普通にブログには書き込める環境はできちゃった。例のCompiz-Fusionもちょこっと試してみるとデスクトップがクルクル快適に回った。

そういえば、カーネルが.30にアップデートされてて、またS101の無線LANが死んだ><

2009年6月28日日曜日

Nvidia IONのノート買っちゃった

少し前からドスパラからのメールで「日本初、NVIDIA® ION™搭載ノートパソコン」なんてのが紹介されていた。今日なんとなくドスパラのホームページを見たら「入荷しました!!」なんてかいてあるものだから、仕事帰りに寄って、、、触ってるうちに欲しくなって、衝動買いしてしまった(^^;

買ってみてあらためて気がついたのは、、、ほんとS101って静かなんだ、、、ってこと。
この新しいIONノートは音がするw多分、うるさいわけではないんだろうけど、初めて買ったノートがS101だったから、他のがこんなに音がするとは知らなかった!

逆にS101は薄くて軽くていい!!って思ってたけれど、多少厚みがあっても少し重くてもあんまり気にならなかった。

とりあえず、性能はS101より上っぽいし、画面も少し広くてDVDドライブもついてて、HDDで容量も多いからWindozeとデュアルブートにしてみた。
しっかし、もってたXPは出た当初のやつなのでインストールが面倒だった><
archもコアだけインストール完了!

んーー、、ノートの左側に排気されるみたいで、左手をパソコンの横に置くとすごーーく熱いなぁ。。後ろに排気してくれたらいいのに、、、っていうか、こんなに熱いんだ(^^;

2009年6月14日日曜日

ABSでnavi2ch


昨日、jnethackをパッケージ化してから、色々試して遊んでみた。
結果、あまり難しいことを考えずに、個人用のArchLinuxパッケージを作るのは面白い。

デスクトップパソコンの方では2ちゃんねる見るのにJDを使っていたが、S101にはnavi2chをパッケージ化せずにインストールして使っていた。何故にnavi2ch如きがAURに無いのかが不思議と思っていたが、、、きっと、みんな簡単にパッケージ化出来るから、わざわざ誰もメンテナーになりたくなかったに違いない。

そこで、navi2chのPKGBUILDのメモ

pkgname=navi2ch
pkgver=1.8.3_BETA
pkgrel=1
pkgdesc="navigator for 2ch which works on many Emacs"
arch=(i686)
install=navi2ch.install
url="http://navi2ch.sourceforge.net/"
license=('unknown')
source=(http://navi2ch.sourceforge.net/beta/navi2ch-1.8.3-BETA.tar.gz)

build() {
cd $startdir/src/$pkgname-${pkgver//_/-}
./configure --prefix=/usr
make || return 1

make DESTDIR=${pkgdir} install

rm -rf ${pkgdir}/usr/share/info/dir
}

幾つかのTips

(1)バージョン番号に「-(ハイフン)」が使えない。
バージョン番号にハイフンがあると使えないので、pkgverには「-(ハイフン)」の代わりに「_(アンダーバー)」を使うらしい。ところがこのままだと、ソースディレクトリに入る時に変数名で入れないので、上記で使っている様に${pkgver//_/-}と書くと良いらしい。


(2)prefixはusrらしい
個人用のは区別して/usr/localもありなのかもしれないとwikiには書いてあるのかもしれないがニュアンスがよくわからなかった(^^;
とりあえず、usrにしておけば普通にパスの通ったとこにおいてくれる。

(3)パッケージングするときの出力パス
Makefileに目を通して、DESTDIRがあれば、上の用に
make DESTDIR=${pkgdir} install

で、良いらしい。pkgdirはmakepkgが管理してるのかな?とりあえず、作業ディレクトリ以下のpkgディレクトリを指してくれるみたい。


(4)infoのdirファイルを削除しておく
普通既にinfoのTop(?)になるdirファイルはシステムに存在するので、パッケージの中にdirファイルがある場合は、消しておかないとファイルがコンフリクトしてインストール時にエラーになる(なってくれないと、勝手に上書きしちゃう)
そこで、一旦、pkgディレクトリ以下にインストールされたdirを上の様に削除するのが良いらしい。
確認の仕方は、一旦出来上がったパッケージファイルを

tar tzvf hoge.pkg.tar.gz

とか??適当に確認。

(5)んじゃ、dirファイルへの登録は?

infodir=/usr/share/info
filelist=(navi2ch.info)

post_install() {
for file in ${filelist[@]}; do
install-info $infodir/$file $infodir/dir 2> /dev/null
done
}

post_upgrade() {
post_install $1
}

pre_remove() {
for file in ${filelist[@]}; do
install-info --delete $infodir/$file $infodir/dir 2> /dev/null
done
}

このスクリプトがinfo登録用の雛形らしい。
filelistの配列にインストールされるinfoファイル名をスペースで区切って列挙するだけ。
そして、このファイルを作業ディレクトリに置いておく。
PKGBUILDファイルにはinstall=行に、このスクリプトファイル名を書いておく。
今回の場合だとスクリプトファイル名はnavi2ch.installにした。


やってみると、./configureで簡単にmakeできるやつは、すぐパッケージに出来る感じ。
昨日やってたjnethackとかだと、もとのnethack自体、Makefileをsed使ってガシガシかきかえてあった。。。暗号みたいでああいうのは嫌だ、、自分で絶対できん!!><

それと、個人用のパッケージングなら、インストール後になんか必要な作業がいる場合もわざわざ頭をひねってそこまで自動化したり、コメントしなくてもいいから気楽。
.emacsに(autoload 'navi2ch "navi2ch" "Navigator for 2ch for Emacs" t)を書きましょうとか、、

というわけで、ABSがちょこっと使えるようになって幸せ♪

2009年6月12日金曜日

ABSでjnethack

ABS - The Arch Build Systemを始めて体験してみた。
ソースからビルドしてパッケージングするための仕組みってのは、あちこちに書いてあるからうっすら知ってたんだけれど、具体的にどうやって使うのかイマイチ分からなかった。

そこで、Wikiを見ながら適当に実践してみたら、なんとなく理解。


1.PKGBUILDファイルの謎とパッケージabs
yaourtとか使ってAURを利用するとPKGBUILDファイルを使ってmakepkgがパッケージングを勝手にやってくれるってのが見ててわかったんだけれど、公式レポジトリ(っていうの?)のPKGBUILDファイルってどこにあるのかなぁ?って探したことがあった。ArchLinuxのTopページの右上の「Package Search」からパッケージを見つけると、説明ページからPKGBUILDファイル見れたりして、これをコピーして使うのかなぁ?とか思っていた。

しかし、実際にはそうじゃなくて、absというパッケージをダウンロードしてabsコマンドを発行すると、archlinuxのレポジトリに含まれるすべてのパッケージのPKGBUILDファイルの最新のものがダウンロードされる仕組みになっていた!!


2.ABS tree
absコマンドによってダウンロードされるPKGBUILDファイル等(パッケージによってはパッチファイルやインストール用の別のスクリプトファイルも入っている)は、/var/abs/以下にレポジトリ毎に区分されパッケージ毎のディレクトリに各々入っていて、「ABS tree」と呼ばれているらしい。また、このtree構造の中に配置された各パッケージ用のディレクトリの中にはソースファイルは入っていない。archlinuxのパッケージングは、ビルドの際にソース配布元から直接ダウンロードするようになっている。

で、このABS tree自体はPKGBUILDファイル群のデータベースみたいなもので、このtree以下の各パッケージディレクトリの中でビルドやパッケージングを行うものでは無い。このABS treeはrootになってabsコマンドを発行する度にサーバー側の最新のPKGBUILDファイルと同期してくれるんだと思う。


3.パッケージング作業の場所は、ホームディレクトリ内でする
そこで、実際のパッケージングは、/var/abs/以下のABS treeと全然関係なく、適当なディレクトリを作ってその中で行う。ABSのwikiをみるとホームディレクトリの中にabsとか名づけた適当なディレクトリを作っておき(自分で作るパッケージ用のディレクトリを作って整理するだけで別に必ずこういうディレクトリがいるわけではない。)その下に作りたいパッケージ毎のディレクトリを用意して作業をはじめる。

ABSの仕組みは、PKGBUILDファイルにビルド用の手順を書いて、makepkgコマンドを呼び出すだす。試しに、適当な作業ディレクトリを自分のホームディレクトリに作って、ABS tree内の適当なパッケージのPKGBUILDファイル(それ以外のパッチやスクリプトがあれば全て)を作業ディレクトリにコピーし、その作業ディレクトリに入って

$makepkg -s

してみるといい。勝手にソースファイルを配布元からダウンロードして来て、ビルド作業を行い、最終的にhogehoge.pkg.tar.gzというarchlinux用のパッケージファイルを作業ディレクトリに作ってくれる。


4.jnethackを作ってみる。
まずは、作業用のディレクトリを作成。

$mkdir ~/abs/
$mkdir ~/abs/jnethack/


jnethackは元のnethackにパッチをあてて日本語化したものなので、nethackパッケージ内のファイルを作業ディレクトリにコピーする。nethackの場合はPKGBUILDファイルのみ。

次にパッチファイル。JNetHack Projectからダウンロードして、作業ディレクトリに入れる。

ここで、PKGBUILDファイルの中身を見てみる。

build(){}内の部分で、元のソースからコンパイルがちゃんと通るようにソースファイルの適当な箇所に手がいれられている。
そこで、これをベースに新たな「jnethack」パッケージになるように、いくつかの修正をくわえてみる。

(1)パッケージネームをjnethackにして、バージョンナンバーを付ける。

pkgname=jnethack
pkgver=3.4.3_0.10
pkgrel=1

しかし、変数pkgnameとpkegverは元のnethackのソースファイルやディレクトリ名の指定に使われているので、これらの部分のために

orgpkgname=nethack
orgpkgver=3.4.3

とうい変数名を追加して、ソースファイルやディレクトリ名の指定の所をorgpkgnameとorgpkegverに書き換える。
具体的には、
 source=で始まる行
 cd $startdir/src/$pkgname-$pkgver/が含まれているいくつかの行

但し、最後の方のライセンスファイルの所はorgpkgnameには変えない

(2)パッチを当てる
build(){}の一番最初に

cd $startdir/src/$orgpkgname-$orgpkgver/
zcat $startdir/jnethack-3.4.3-0.10.diff.gz | patch -p1

を追加

(3)jnethackパッチがあたったことによる修正
次に、元々のファイルに対する訂正がjnethackパッチがあたったために上手く働かない部分を修正する。

sed -e '/define HACKDIR/ s|/usr/games/lib/nethackdir|/usr/share/nethack/|' \

と言う行を

sed -e '/define HACKDIR/ s|/usr/games/lib/jnethackdir|/usr/share/jnethack/|' \

に修正する。(nethackがjnethackになったため、ひっかからなくなっている)

もう一つ、jnethack起動スクリプトの部分

-i $startdir/pkg/usr/bin/nethack

という行を

-i $startdir/pkg/usr/bin/jnethack

に修正する。

(4)パッケージを作る
PKGBUILDの訂正が終わったら、makepkgコマンドでパッケージ作成。

$cd ~/abs/jnethack
$makepkg -s

そしてインストール

$sudo pacman -U jnethack-3.4.3_0.10-1-i686.pkg.tar.gz


多分、以上の修正で、素のnethackともコンフリクトしないjnethackパッケージが出きると思う。

最後にjnethackで遊ぶときはターミナルの設定をEUC-jpにしないとダメ!更に色に関しては、黒背景に白文字、gnome-terminal等の場合色のパレットをxtermにすると良いらしい。

2009年6月10日水曜日

銀魂おもしろい

PCの話とは関係ないんだけど、しばらく前にケーブルテレビでやってた「銀魂」っていうアニメをたまたま見て気に入ってしまい、DVDとか借りてきちゃったりしてます。子供の頃に毎週楽しみにみてた「うる星やつら」に似てるところがあるのかなぁw で、S101でも試しに見てみたら普通に見れました。DVDドライブ繋げてわざわざ見るのは面倒だけどね(^^;

さて、仕事の机の上にちょこんと乗っているS101なんだけど、IRC画面ばっかりってのも飽きたので、nethackを入れてみた。yaourt rougelike ってすると、結構いっぱいひっかかる。
angbandの日本語版を昔やったことがあるけれど、slash'emとかってのも有名っぽかった気がする。

nethackは一時期スポイラー見ながらクリア頑張ったけど、出来なくて挫折した。クリアを目標にしていて結構、進めた後に事故的な意味不明な死を迎えると、次に立ち上げる気力がなくなるゲームだwこのゲームはきっと、クリアよりも様々な死に方を楽しむっていう気持ちでやらないといけないにちがいない(^^;

AURにjnethackがなかったのが残念。nethackのコンパイルとかってコンフィグがめんどくさそうなので、腰が引ける、、、



遊びながら、nethack系のページを散策していたら。面白いのがあった。

Public NetHack server at nethack.alt.org (NAO)

nethackのためのパブリックサーバーらしい。

$ktelnet nethack.alt.org

ユーザー登録して参加できるらしいが、それより面白そうなのは、サーバー上で他の人がやってるのを観戦することができる。他の人のプレーを見ると、操作がめちゃめちゃ素早いのに驚いた!!慣れるとこんな感じなのかなぁ、、

hack@holicNetHack Portal
こっちは、スポイラー系とういうか、nethackをやるのに雰囲気を盛り上げてくれる文書のHP

2009年6月2日火曜日

だよもんって何だよもん?

UNIX板っておかしなスレが立ってもウイットに富んだ大人のレスがついて和んだスレへと変化することがあって昔から好き。
Archとは全然関係ないけど、暇な時に昔から眺めてる無害な雑談スレをリンクに追加w

S101は、仕事場の机の横で暇を持て余した時にちょこちょこといじって遊んだりしてたんだけれども、最近、忙しくてあんまり触る暇がない、、、IRC画面になったま、ちょこっと雑談するくらい。

家に帰ってからは、なんとなく「EmacsLispプログラミング入門」なるむかーし買った本が出てきたので読んだりしてるんだけど、、すぐ寝ちゃう(^^;やっぱりLispってどうも性に合わないのかなぁ?Lisp関係の本って昔から思い立っては買ってみるんだけど、読破したこともなかったりする。一番とっつきやすかったのはJavaかなぁ、、オブジェクト指向っていう概念が性にあってるのかもしれない。だから、C++も好き。

結局、家のメインのパソコンもArchしか立ち上げなくなってしまった。昔と違ってGnomeも普通に動くし、普段はネット見たりくらいしかしないから、WindozeもLinuxもあんまり関係ないっぽい。
んで、せっかくだからCompiz-Fusionとかも入れてみた。少し前から「Linuxはこんな凄いことができる」みたいな感じで大げさにネットとかでふれ回ってるの見てて、「だからどうした?!」とか思ってたんだけれど、、、、使ってみると、やっぱ面白いw
昔からバーチャルデスクトップとかあんまり器用に使える方ではなかったんだけれど、普通に使う様になった。っていうか、これはS101でawesome使うようになったからかもしれないけれど、、何にせよデスクトップがクルクルと入れ替わるのは見てて面白い!!ウインドの開け閉めのアニメの派手さもまだ飽きてないw