[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:11491] b-f (boot-floppies) devel (Re: Re: [A)



佐野@浜松です。

In article <200001191521.AAA02641@xxxxxxxxxxxxx>,
  at Thu, 20 Jan 2000 00:21:59 +0900,
 yosshy@xxxxxxxxxxxxx さん writes:

> > >  jfbterm の seg fault は term.c の
> > これの原因がわからんです。
> 
>   chroot() の後ですか?

 chroot() というのは ? jfbterm のコードには無さそうな。

 root image を loop device 経由でマウントしてそこに chroot して
テストした時もそうでしたが、フロッピーから起動した時も同じ症状
だったと思います。確実な証拠は見つけてませんが、libc を objdump して
リストを見比べてみるとなんとなく getpwuid あたりは違いがありそうな
気がしたので、library reduction の影響を強く疑っています。

 # CDROM ベースとかになれば、reduction する必要も無くなって
 # libc をそのまま入れられるんだろうな。ついでに locale data とかも。

>   オリジナルである KON では、起動時にログイン情報を
> /var/tmp/utmp 辺りに残す作業を行っていました(インストーラ向けの
> MINIKON にはなかったはず)。KON から生まれた jfbterm が同様の事を
> やっていても不思議ではありません。minijfbterm を作るのも手です。

 jfbterm の term.c で getpwuid を使うのは、まさにそれ (utmp に
記録を残す) のためのようです。setutent() とか pututline() とか
使ってますから。

 minijfbterm は、あってもいいかもしれませんが、時間が無いから
できれば普通のプログラムと共通のバイナリで済ませたいですね。

もし何だったら option を追加して utmp にアクセスしないように
するという手もありますし。

というか /etc/jfbterm.conf の utmp: 1 はそれ (utmp へのアクセス) を
制御するためのものみたいなので、boot-floppies 用にはここだけを
書き換えてしまうという手もあるかも。でもこれってまだ実装されてない
みたいなんですよね。main.c と term.c だけちょこっといじれば、すぐ
実装できそうな気もしないでもないですが。(unstable のバージョンは
もう upstream version が進んでいるみたいなので、もしかして既に
実装済みだったりします ?)

>  またその際、/etc/passwd を参照してユーザ情報を取得しているので
> あれば、chroot() 後の動作に問題が出るかもしれません。

>  改行に関しては、現状では地道に改行位置を明示するしかありません。
> 
> # glibc が終わったら ncurses のワイド文字化に手を出してみるか

 dbootstrap は slang と newt みたいですね。newt がマルチバイト
文字に対応してくれたら、文字化けもしなくなるんじゃないかという
気がするんですが、それ以前に single byte な文字でも、表示ウィンドウ
の幅が指定されていると後が切れたり、妙にすきまが空いたりと、
指定された文字列の長さに合わせて表示幅を調整するという芸当ができない
ような雰囲気です。

そのへんがきちんと実装されていれば、「地道に調整」しなくても OK に
なるんじゃないかなという気がするんですが、よくわかってないです。

 slang は日本語扱えるんでしたっけ ? 以前 mutt-ja の関係で菊谷さんが
 slang と slang-ja の違いについて書かれていたような気もするんですが
覚えが無い。。。

 newt と whiptail は pointerize と同じく Enrique Zanardi がメンテナー
ですね。このへん (newt と whiptail) を i18n 化したら、インストーラ
関係への効果がありそうかなと感じています。

今 newt の資料 (/usr/share/doc/libnewt-dev/tutorial.html.gz) を
眺めているところなんですが、これってもともと RedHat のインスト−ラ
のために作られたライブラリなんですね。Vine とか Kondara とかでは
こいつを使って日本語版なインスト−ラを作ったりしてるんでしょうか ?

-- 
     # (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
    <kgh12351@xxxxxxxxxxx> : Taketoshi Sano (佐野 武俊)