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

[debian-devel:11416] jfbterm



佐野@浜松です。

 /bin/gzip が無くても jfbterm が動くようにするためのパッチ
 (前回投げた getpwuid で NULL が返ってきても seg fault しない
  ようにするパッチを含む) です。


begin 664 diff.jfbterm.gz
M'XL("*A:A3@``V1I9F8N:F9B=&5R;0#55MMRVD@0?495^8=>0J4@DK@)C)'7
M*60L8VP07B[9U,8I%99&6+L@J<0HCG/Y]^T9"2.N2=4^+0^BU=VGI^=T]XQL
MUW%`#B,#_G8>*`D7<KFH%!NE_O0?XKAS4G2]34O1)@_1+&T79%D^C,Z,(P*&
M_QF4,I0KJJ*H2ATJS693$$7Q9Z$S?Q(;;J8>`J!24^L-56E"M5PN"ZT6R"<5
MZ01$?#:@U1*@K]WJ7>-J`.?06LFHOM/:MUI'9]I$1.5[?3CJ#@RF3,26(&(R
MYBSROKJ!&4SI(S-NJ1#)-3LN*0<!M+[9-49CK=<S[X:#SA#?KWI:9X3>\@)J
MC7J=I]\\Q<3%9C-)7X#+[FA\U>WIS#&79V]F>]#O#XP"OHX&DV%;'S'Q6M<N
M,6DFCO4/;)M<UC^,AYK)8`6,)H^U(<:9T6DHB+',1.C\U;TS=>,]2T9^($LJ
M0!*:KYH4Q%PM)\#@XD9OCS>MB:[`]U$]:;"-5$].DYUD6HX?`BLA8/?$.^'[
M*IR![<,]>@#8Y[G\,K1L-T1MK'(=H)@0R#;D<G8IEV,ASH`^$@\]9/0`L`*0
M@Q#MB1G#V^Z2LC`O@'M!W/2UCSJSI<E\21(1DB2<7>\7C^_?8>X=#0S5=U"R
MR>>2%\WGB+,/S-G4LGS/<6?%Q[VSL#;OF;*U<6O(*E6U=GI\R%+8K1D[5>NI
M&:O5V(SAL\E+6WH+K-<A"/U9.%T`'X*W)0%>1YY-'+BYNC!YA]UIXVOL0O$0
M0$P#)L8+1.1KM/TY=M!LNEA,@3@.L>CV(NU!;S`T.UJ_K^$RA]A=[?'0*9:R
M[^$W9=TEN/X3@M/@+8:;:KFR9OBTP1C&Y_^8X2@\>%&D'0YR')OW7!657R$Y
M0>_>%?54'RN\CQ6I4HO/**UM7NI774,W)\8?D\%8O\QO4"M!-O=MXVS_D<73
MT'$9Y[8WAR6A40!^0%W?6Q8%$0,R'#_R1_FMBT."^$4"M2"(JX,NMWOC9-5L
M?.+A&:8*(CN74#J4[+JLZW37X5C"(B:,%<<`VK"#Y[YVT=/S%BL^K[T$'_$:
M(-[T84YDKI;CGN#G8!1ZX'M@I7KE([;'-)I3\/Q/GR0I1IKK@.>>7^#+]4<=
MLWVMMV^[1B?_]$AP3R%0'V)$.B;ZKPCYDML)B)Q\>2;+A)1#;>CX'BU:>WLD
M-NUIO=BPU735FEHN'V^Z!)=NM[JJ5-6*LFZWJE+F=R+^52J\X5Z[SN[\OD(]
M"4,_S&0V].`ND6#*>JS(?;`-7N%$(U%[1AHMF<R2AE;PG+<6MK1MARS(%MQG
MLX4S'B2.!GLP:81MP>]ID(?<\UP2(89/:0QWO.F",-<M?3:)<*AP3#Q0N-BT
MIW"Q8;MPBEIM'B]<@DL5KEQ5JZ?L*%\7KG'""X=_2>$R$5T$Q8B:]#D@V(V3
MD3YD0XY?1Z.SE#EP;?:]12@*^0*S(`\>XW?E,7<](@'U)%BZ7XGO;!@*")%W
M(-&2A!($3_*[X,ED%.]@F0?#BAG7R0=/OYT;DUZO`-_X-]!_"`?)[T?\;70L
M7C8A._L+T9`6ZBY(_LV+#WLM<+Z"B$:4<9%_PXQ<A]T64>)1QNB_SK:A>JP,
"````
`
end

これ以外に debian/rules の

        dh_testdir

の下に

        autoconf

を追加する必要があります。(configuire.in や acconfig.h, config.h.in などを
修正して configure 自体はいじってないので、そのまま ./configure すると
パッチが有効にならない。)

一応、手元ではこのパッチを使って debian/rules で autoconf して
 build した jfbterm で boot-floppies の中でも通常のシステム上でも
ちゃんと日本語表示ができているようです。

要は "/bin/gzip -dc < " の部分を "/bin/gunzip -c " に変更するだけのこと
なのですが。

あとは jfbterm の中から dbootstrap を起動させると dbootstrap が
 /etc/inittab で respawn されることを前提にしているせいか、
「インストールシステムの再起動」を実行すると固まる (どこが関連しているのか、
dbootstrap のコードを眺めて調べないと) とか、桁揃えのせいかメニューの文字列が
化けていくという問題があります。

 # bogl が簡単に i18nize/l10nize できるのなら、そっちを使う方向で
 # 考えたいような気も。でも、きっと難しいだろうなあ。

もし term.c の

        if (getenv("SHELL")) {
                strcpy(shell, getenv("SHELL"));
        } else {
                strcpy(shell,"/bin/sh");
        }

といったあたりに option で起動 (execl) するプログラムを指定できるような
仕組を入れてしまえば、"jfbterm -c /sbin/dbootstrap" とかの script を
 /etc/inittab で respawn とか、にできるのかな ?
 

なお、今のところ手元の root floppy で jfbterm 以外に変更しているのは

 /dev/ に tty[5-7] を追加。

 /etc/inittab に以下の変更

--- /mnt/loop0/etc/inittab      Tue Jan 18 12:41:31 2000
+++ /mnt/loop1/etc/inittab      Wed Jan 19 14:20:59 2000
@@ -20,11 +20,16 @@
 tty4::sysinit:/etc/init.d/rcS >> /var/log/messages 2>&1
 
 # the main setup program
-::respawn:/sbin/dbootstrap
+# tty1::respawn:/sbin/dbootstrap
 
 # conveneince shell
-tty2::askfirst:/bin/sh
+# tty2::askfirst:/bin/sh
+tty1::respawn:/bin/sh
+tty2::respawn:/bin/sh
+tty5::respawn:/bin/sh
+tty6::respawn:/bin/sh
 
 # syslogd and klogd messages
 tty4::once:/sbin/syslogd
 tty3::respawn:/usr/bin/tail -f /var/log/messages
+
diff: /mnt/loop0/etc/mtab: No such file or directory
diff: /mnt/loop1/etc/mtab: No such file or directory

くらいです。あと utmp 用に mkdir /var/run してあったり
したけど、これはたぶん関係無いような気が。

そういえば boot-floppies の root でつかっていると、jfbterm から
 exit した時に固まるような気がする。

端末が固まった時に他の場所で続けられるように
複数のコンソールで /bin/sh を動かしてます。もっと
空いているコンソールを作っておいたほうがいいのかな ?

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