Login
Immutable PageDiscussionInfoAttachments
clear/note/2011-08

MMA

2011年8月

08/06

08/08

linux 3.0 on Arch

http://www.archlinux.org/news/changes-to-kernel-package-and-filenames/

8/7づけで(ところでこれ、どこの時間なんだろう)、linux 3.0がTestingリポジトリからcoreリポジトリに移動した(要するにpacman -Syuで引っかかる)。同時にパッケージ名がkernel26->linuxと変更。それに合わせて、/boot以下のイメージファイル名も変更されている。親切なことに以前の名前でシンボリックリンクを貼ってくれているのでgrubのmenu.lstを書き換えずともちゃんと上がってくるが、ちゃんと書き換えた上でシンボリックリンクを削除することを推奨、とのこと。

3.0に上げてから起動が速くなった…気がする。

netcfgのバージョンアップ

http://www.archlinux.org/news/netcfg-266-release/

8/6づけのアップデートを適用したら起動時に無線LANインターフェース(eth11)がupしなくなった。症状としてはこんな感じ。

上記リンク先をちゃんと読むと、今のところnet-auto-wirelessでだけ使われている設定ファイルが云々、と書いてある。中をのぞいてみると、

## Define to the name of your wireless interface for net-auto-wireless
WIRELESS_INTERFACE="wlan0"

ダメだこれ。ということでeth1に直して再起動するとちゃんと勝手に接続してくれるようになった。ちなみに、各接続先ごとの設定ファイルにもインターフェース名を各項目があるので、netcfg-menuで設定を直接指定した際はこちらが参照されてちゃんと動いていた、ということのようだ。

08/10

コンソールのログをとる

scriptコマンドを使う。エスケープシーケンスも残してくれちゃうのと、viとかページャを使うと出力が崩れるのが難点。

[clear@nest ~ (ret=0)]$ script test.log
Script started, output file is test.log
[clear@nest ~ (ret=0)]$ echo hello, world
hello, world
[clear@nest ~ (ret=0)]$ exit
exit

Script done, output file is test.log
[clear@nest ~ (ret=0)]$ cat test.log
Script started on Wed Aug 10 19:06:42 2011

[clear@nest ~ (ret=0)]$ echo hello, world
hello, world
[clear@nest ~ (ret=0)]$ exit
exit

Script done on Wed Aug 10 19:06:53 2011

毎回ログファイル名を指定するのも面倒なのでaliasでもするかと考えたが、よく考えたらそこまで頻繁にログを取りたいと思わないだろうし、ログを取りたいと思うようなときは何らかのひとまとまりの作業を行っているだろうから、ファイル名はすぐ思いつくだろう、ということでやめた。例えば日時からファイル名を生成するにしても、あとから検索するのが面倒。

08/11

08/13

ウィンドウマネージャつくりたい

去年やりたいと思ってたけど、なあなあでやらず終いだったので今年こそはやりたい。モチベーション維持とメモを兼ねて、開発日記でもつけてみる。ささいな内容でも書くようにしたい。

08/17

8-STABLEへのアップグレード

自宅のデスクトップを8.2-RELEASEから8-STABLEに上げた。

  1. バックアップを取る
  2. stable-supfileを用意してcsupでソースを同期後、/usr/src/UPDATINGを確認

  3. make buildworld

  4. make buildkernel

  5. make installkernel

  6. mergemaster -p

  7. make installworld

  8. mergemaster

  9. 再起動
  10. zpool upgrade

  11. bootcodeの更新。gpart bootcode -p /boot/gptzfsboot -i 1 ad0

  12. zfs upgrade

  13. 再起動

参考

Skype on FreeBSD

8-STABLEに上げたので早速net-im/skypeをコンパイルした。動くには動くものの日本語がまったく入力できず(日本語入力ONの状態で何を打っても全く何も出てこない)、使い物にならない。uimだとダメで、ibusだと大丈夫だったという事例をいくつか検索して見つけたので、ibusを入れて試してみたがやはりダメだった。

I am hamegg

半ば忘れていた。

08/19

GMC J-1ケースのメモ


08/22

dwm系WMとJavaアプリケーション

dwmでJavaアプリケーションを動かすとウィンドウサイズが変更できなくなったり(正確には、外枠のサイズを変更しても内側がついてこない)、全体的に挙動がおかしくなる不具合に見舞われた。調べてみると、awesomeやxmonadといったdwm系のWMで同様の事例があった。 

どうやらこれはJava側の問題らしい。Javaのこの挙動はICCCM(Inter-Client Communication Conventions Manual)違反とのこと。

これによるとnon-re-parentingなWMでこの問題が発生する。そもそもre-parentingなWMとは何かというと

つまりタイトルバーやボタンといった装飾を施すためにウィンドウの親を変更するウィンドウマネージャのことで、そもそも装飾のないdwm系はnon-re-parentingだった。この問題に関する解決策は以下で述べられている。

LG3Dって何なのかと思ったら、

This works, because the JVM contains a hard-coded list of known non-re-parenting window managers. For maximum irony, many users prefer to impersonate “LG3D,” the non-re-parenting window manager written by Sun, in Java. 

なるほど皮肉ですか。

08/29

08/30

起動時のZFS mount

jail上で/usr/ports/以下を親環境と共有するために、nullfsでマウントするようfstabに設定を書いた。

/usr/ports /jail/gaea/usr/ports nullfs rw 0 0

ZFSの構成はこんな感じになっている。

[clear@mirage ~ (ret=0)]$ zfs list
NAME              USED  AVAIL  REFER  MOUNTPOINT
...
pool0/jail        287M   838G    36K  /jail
pool0/jail/gaea   287M   838G   286M  /jail/gaea
...

このとき、起動時のマウントに失敗してシングルユーザーモードに落ちてしまう。メッセージから判断するに、そもそも/jail自体がマウントできていない。pool0/jailset mountpoint/jailにマウントするよう設定してあるが、どうやら起動時にfstabに従ってマウントする段階ではまだマウントされていないらしい。set mountpointをやめて、nullfsで/usr/portsをマウントする前に/jailをマウントするようfstabに書いておくことも考えたが、少し調べるとlateオプションが使えそうだったので試しに書いてみたら上手くいった。

/usr/ports /jail/gaea/usr/ports nullfs rw,late 0 0


  1. broadcom-wlドライバを使ったらwlan0->eth0になったりeth1になったり、ということがあったので、udevのルールを書いてMACアドレスに対して名前を固定している (1)

clear/note/2011-08 (last edited 2011-08-30 23:14:20 by clear)