ORIGINAL QUESTION -
>
> Hello,
>
> I am looking for the best way to install xdm under OpenWindows 3, SunOS 4.1.3.
> The documentation is limited in this area.
>
> Thanks, Jody Schivley (jschiv@nps.navy.mil)
>
ANSWERS RECEIVED -
===========================================================================
your might try the oreilly's book on x admin.
you will have no end of delights with xdm and openwin tools like cmdtools
and shelltools . I have also had problems with reseting the xnews server.
I've been given some fixes for this by fax. Do you have a fax number I
can send these to unofficially?
===========================================================================
Don't. There is a bug with OW3's xdm that crashes. I was not able to
get it up. I use X11R5's xdm, and am not experiencing any problems.
There are several steps to using it. It all depnds on what you are
using for an Xterminal. I am using a NCD17, which came with
documentation on how to set it up. I have not used it on any flavor
of Sun, so I don't thing I will be that much help!
===========================================================================
I use the X11R5 xdm, the reason I do this is more because we run real X terms
and I can get patches off the net and have the source code. What I really
wanted to get across was that I used to run w/ the xdm config files in
the default location. I found that this can be a problem with users who
get adventureous and run commands. The xdm command is a display manager
which users sometimes misteak to mean a window manager. I therefore
keep the configuration in /var/xdm and use the xdm -config /var/xdm/xdm-config
to start it.
The X11R5 configuration also has a nice feature (which you can add to
the Openwindows version) which creates a .xsession-errors file in the
users home directory. They can then do a tail -f on the file and see
the errors instead of using the system wide one.
===========================================================================
I couldn't get the Sun one to work: I used the one off the X11R5 part
of the SUG 1992.1 CD. Its instructions are minimal but adequate. Be
aware the HCL Exceed xdm modes don't work w/ PCNFS 4 in HCL versions
3.1.x. They do work in HCL ExceedPlus version 3.2
===========================================================================
I understand completely. I tried this several months ago and finally
was able to run XDM from my /etc/rc.local. Enclosed are the XDM
configuration and startup scripts that I used - I hope they are
helpful. I installed the XDM files into $OPENWINHOME/xdm, so several of
the files use that path instead of the standard /usr/openwin/lib/xdm
Brian
-------- SNIP, SNIP, SNIP -------------------------------------------------
begin 444 xdm.tar.Z
M'YV0+EY,H1-&#ITG5P H7,BPH<.'$"-*G$BQ(HB+-VK4 '@HD<8'#V"B"$C
MI$B/-6;8N%@#AHT:-ES&@%&2)0T:,CI6W,FSI\^?0(,*'4JTJ-&C2),F'1'B
MA9@T;E[,0:-@! @@*$:D&%CPX)61+E;FB/$"1HX7,6@H4%#PS)P>)%2L?0*E
MB),K29P@>=*D"-P]=.WBU<NWB(X>+^K,D?/B#9PR;NY [:. "9$O3)((D1)$
M2I8O4()000(W\-V\>_N^8)-&C(+0HTO7/4U8]5,W.DC 1J*@21 GNV4+1EWX
M19LPN$GX!BZ:=QD\<-X8!&%Z<.HB("QCULS9,^CF(':#6+Y[+9PP<]Z2J$Z\
MKPBG4%_@<5/FSAP0+<S(>=,&#YDV(JQEAG0@I%&@&R#$!8("9+RA0 )IF '"
M%@D:&$(/"8+4Q0X@T($&9 ^>EQY<(LXA @@BD)!& @^:82"#;]"GP'-EC)%@
MB0HHI>..//;X4$!8R%'&'&70X>.11'F4T48=B012DQ>19-))(,@0PTH@I#2#
M##.HM.4,*,U @PTZ(6GFF6BFJ>::;*+)%'Q1357555FE$.2018*UT5AEG976
M6HDMUMACD<5WFWQ$TK'?&W3@1T899E2U1AILL($?%45(T00(8,!Q7QAXW $"
M'R"<(20<*.K'GW\ CEKJJ?C9@:*I9<!Q(JEAW+$&""?L 8<<4#5*0@Q]G "&
M KF51UYSPM%VG7'(Y;;L:#-")UVC[-6&G7:9;=;99^*)-RUO"I38K'6%O7?H
M?/7=E]]^_?T7H (#RE'@@0FJL&"##T8X884@7)@A"!MV^*$;(:*G7HDGIKAB
MBR\V*".--I* 8YL89XP4D$+.\48=<HPQI,9J>F3#35->]*1(4D)YTDLU:<FE
M2B1A"8(-,M 0YDD]^SSST '_3,>;+QQ!E0J%'VT&RXHBMP<;(1!1QHQSJ$#
M"".\84<9<@#[*!</\K!$&7GX8$0,5R?: I'I4>U&"VW5T09D=*!@1AB4SA&&
M&66D (*+;J0Q57YIE,$&&2BDP(4;8"<@-MD^2%$DR+B!H#;;<[@-MQQGR$UW
MXG]#)3@:A!N.> H*$&TTTF)(]Z@<5Z1!AH=7SY"ZTDC36N00;Q0MQ]4CF&&#
M[:HOK<+=E/+N^]5"DG'[ZFX<'R,=5Y.$1\[/&_\K?W#08<3TU<MPO5K%(_V]
MD*9^[ 895S<A>^!GH$&'$&S444;V2 L1QAAKI%_'^E=C0AG:$*,AH"%" T)8
M^9C&!.BY0'=3<\,9=)" *QAN#/PI0X?>8# -,H$&,X !2+ABK]BM[PVB8D(8
M7+- %S1P:2Y 'ALHZ)$K[$>"(0@!"*@@ASR ( AGP)L;0I CH>T(2$22P];D
M, <C'LED*',9"%;FD991"24W8(D,;,#%&I!D)BBQP0W(Q!$GFO&,:$RC&AFB
M Y T< QAL%31X&BI]<P&7:IAC1CD\Q^!$,0@" %!&Q5@N2*M;4B9B]'F.C<W
M-]1-AGKCF]\ -[K2'2YQBVO<X\HF.3I0+FV&Q)SFXM;(NDU2=(-SD>D2A[_H
MM4X.KXO=[-!0NU:J (+*DP[PA$<\W$5/AKG\'0B:9\L$4F\DXL/> E6PO39T
M[WN.#-_X;'F^,O@/@.-Y7QKB-[_ZW6^9^N/?-=F7G0$6\(!F2& K7>A "$)E
M@A6\8 8WV,'L@%"$(" A"$S8H!2N<)TOA$H,\3;#!-3PAF?(X0Y[^,,@0H6(
M:RP*$A'IMH@B14D:2=D44V9%*LD@9S%@29=:,D88T""+++F!2GAFT9:Z]*4P
M)<J;#C4&.5D%*UK!@BAC!!8:@(!/9D&+6D8P)YU2-$95F1,5#G@?P=5S>Z8*
M0QL,)K4"W4<._P,!>NHY!M;0;4[UJB<9! >'J/GP.&X(PQFXYH*++-6ISY%J
M634HN#G%H0YIH(,&]5.X];'!AUO-JU;IH%=GTN$^=. @5A$4!A \1@XM4 S7
MYN0"/.P402YB UW=, >]AH$,('B#A.HUAG=JU;%=2<,8ZA U.<SILB PZ\?H
MD-01^ L%^-%#@K)U'1#XS4,@LLI%$@496?&V," (%&,< QG)(&P$D!EKI(@Z
M N*Z05;<XLZWOC.:! 'FCNTI0A]6TYJJ6%=6XB'!=X>CK?'>)C=[V UEYJ0H
M'WH,9"(#@0M\^0(7;"^S]R/J'"1#AS&@ 00H(,$4D% $)C !=7 D$HK@](*:
MHD$$.GC0?4.F01(\:[_0T_#'.)R@#ULX9 \2@Y#"L(8!*R#"&E17?%I\X0PG
M8,/Y]7!Q_+L? !/R(BHN XM='%T7UQ8$Y\MO$I=(3P,C9ZT@D*S7Z$F"*DPA
M4TFU(WN?M2XTO*&S(%A!E:\L!2" P <^2.ZC[/ "-["6#54Q, H1-.9,J;D,
M;,8@9WMWOSBCI\-6@4I58H"Z$20 Q@D*J: -#<F]]:TJ"4@ Q4" ![W*8:HM
M6&L&ZPL"',!@?"V 0:CQPX8Y0#H!.]@!I(>TOZJP>@QKN6V"?H"%O"2!"E(8
M0L P!)+?'NS'A6Q49[M2!U1AB 2U=L*M<SVC4M-50KC-3XEWC ?1*<I&O@:1
M1Q)EN3]ZTMC35DUEK8UBPQ$)V-P>MD&*#8)C'S>/K7D!%L@-Z^@6*%*QAC9^
M)$0"=7_;MQU$F*3Q4*/D'FHJ"?)WL9M][FWGJ6,C%ME]COWA.^%X2/W2M[1)
M ''\#@G@P!5X O 2S&0^@V?35#'.6QJ2:\O0@_JW1VF:H('3;K27,.TIN?&
M:4^/;P4S 3I(6E#J&;T\4C%-NM*7'M.)MBU&+I@*TW>"42:=A(I1*HD4HW2#
M*VE1C"+L^D=-)J8:L'3J:$^[VGTVT_C8E$XYA6T,7.!3H/IIJ$6][)'?VE3$
M?LBQ^XGJ5#U45:<N5JM^UV!7^TI;JX05N" 8ZQS*&H:S(D>M;'4K4T$05V=J
MUJIVQ:M>_P:LZ/X5\05JE-0*VSW$*C:KC7UL9)-(6<L>%;.4VFQGA0Q:T?Y-
M.J65X&G/8Q#5LK8@K[U];"L_VZ2^VR_J?;X.6J#<035W,I6Y3+>Z RYF:=E9
MQ='C:[S_?#@EJSF]^4UPOH_'(D K.>.J5G2FDUUO>2=<X(D_?1EZ<?WRE\>B
ME7NUA6@*QF .=A&+)F-186$B4&@)T%8Z)FZ^!&D0:&)3@6*&EFI5H8 O0&,-
M2('AYGX Z&,9J&K0I3>P=F1)ID%+QC5-A@9/ID%2)CM49F581E3L%UX4A@=>
M!F9B9H-E=F9WQF9N5BE5X@,F$ -K08"!AC"$]B $J&@"UVB2]" #5W X=VGX
ML7-%PE ^ES.A-FI$UW*HIFJ2AH(S@H8*H'!P !<?5FV!<VT*L'(2YX8[9G$1
MAW$*X"\4LG%L2# <$G(V1W V0F$(UV_>MG#F=C\0(B%]R&]T^'$%(XB11G)D
M8')$AW*@Q7%#DH<MYR(/0@<S!P(U=X4VDH4Z5P:;YH6?EC-")W2D9FJ@6&[K
M<V]KL8<:QV]_F&T"-VF&>&!(E(APL'84474:A77(I%%5E!8BM27#XQ(V$%(I
M)0-F5T;$>(W8F(T\TG8+*">R)FTO4"1CT&:] SV^)8@>\1R"I82+"&QK15@^
MI&<>HUE&)UT* (.-8GBPEW@@L'A?Y7@$ GF21WF6EU9K)0=MM4.;UWES!7I6
M<5=YM5>EYU> U52J1U@#U'KT='BQQS6S-UE645FP!6 'LGLIYWND95JQEUJK
MU5K)]W0((EMUT'@*\'Q_(7W4IQC+12C.11GUQWW<11HYJ"WDY1KK5W[OI1OH
M-R[GHH-H)2WJAW[/,7^-\I/;A7_=I7]6P6G]!V)+TU__)8#418 +UF!,@(#/
MQ8$,Z( 5N&.X$XS$!@=1AP;:R!#&*$7(V%%40A)@DB5=LD4A!$(V,SPK98UU
M>9B(F9@3P8U2015\N&_))8[DZ$N &'# IHZ-PH[.!FS5)YGO2 ?Q6#5\1B]I
M,(?[R%5>Y4A@%9!_-Y!F!0)HA7D(J7EPA0=R]7EU]9"B)Y%]10:G%U@7R7J'
MM9&PYU@>*66U-Y*Y5Y*>U7NC!7PJB5K%UY+(9Q6P)9,T:9/1!U[:,GW5QUR%
MX@8^J7W:=7_DQYW/(GY'B9[%D93*$I6Q,93/\I3* 9_.82WT1Y[VUWW=)2[V
MN19;R7]YZ'_0 Y8])I9^)F$%:)9HN8$4MI8@&($B^)9\U 8MH&<N<@:*"44^
MA9<<I757% ,U8"7-")@S,28FDQ8T<':*V:(N6I<W52>L<J$QDJ%Z\E-D$51_
M0@1D959-<'D'&75<LT16$VE4(I_%P2KRUH),I \.GD^"J1LQ37[(0<O9 2Y
M1T,7\0)TX$P5V@)4*AVF]J0$^:,&R59P(#M8JED49% GP:5>.J-IZCQD&J5G
M*@<J$(E%>J3EIZ1XZ'%CVJ.59Z:RJ0*7I:4@X*:[Q9ZJX:=Z5Z>#*J5X&@8S
MZ67 H@=E@*@>H2CVXZ2"F@>$>I!YBB?48Z0G@:2-VD<65R2>"J61>J>&*HQM
MRJ>,ZGZ.*HRM6J:2Z@)"0D!Z%025RJ._HZBH:JO_D:MV*ILN\ 4P4%DE-ZNG
MBI3Q88FN :F@NJO,Z@*4ZB'2D0:8BJB<>C_6&JILE:W;B@9KFJF*6GU="@=2
M,:0>>:[(^JK*FJT=4R3G ZRTDP#A.J_7>J?+VJQ2!@520TN*BF'A6& Z8'[5
M]UZ=J;#55P=C( :Y(:UN$"#CBJW-.@=YL'MM0+#[ZA'O(8X+Z[ ZR; G2[(1
M.[$56ZMP$B '=V"(&)<,QXB/N7%Z6IF4.'(E=W(IQXD7]XFER:^C6(HW9VFI
MN(H^](4T\(I@-(:D.8?U5HLPEV\(!IDSNVZHPHN#6'"_J%_R47)S^:)W>74?
MJHPL$1,LX1(P(1,FA1(W048O.K=T>XV,^78XE0+4.I<]A:-](E1K(0< U@,U
M6:LW6:O>>;+@V9/9MQW[&91-293B-Y770AVUFAWZ"93EH0!W<$"?1R$D8!69
MUB@: B-0^&>)=B /T@)DH (ID !$D 13 5,$ 19 !<RP"&4.QVQ.[NUFP4<
M,A410@<:F !$Y[H)(+BYA[O!BT[$:X:OIF'."R,R,B=3D">-)0;[TS_[\3_.
M4ZP[F"B+TBAKTSLT2"MY * * +[KTK,<YV.8J0 ZZ*?W2EL9"ZML"*TB ;ZW
M2K/WJZR]RBAEH*]H(*R(RK_'^K]!FJUX4+<._, 0',$2/,$47,$6C"8Y9H%H
M@&()$&1#=@<OAKH<Z($VUG\2:J !2(\>X<$M!L)%!L(J"'PL"*_VDEC]"(,2
M)(-)1(,V7&=2D&46*Q\]V"@_2&9FAF9#V&9O%F=>=@=T!H1)+(^CF:" IKHC
M\(2&%H56G !4^&B&9HJ4AK1;J(H\QXJ@)FI#5W1?K(&&%KTGV&JX>+4D0&NV
MAFNZ)C"]9ID.)VS"V&X)DFS+-@0U>V]7NW%O2&\@]VM[W&UQZ<<G/&YQ6&Z;
MN<A_Z&XNJT?R1F_U:(M6&VVZV,=<"\9?F[7?5K/H]G"="*B.7'%ZFG&%#(FI
MS'*)#"*5V+.9^+.M['+VF R1W-=>XIBG&EDW(5+VXI-&W1/6W31!7,7W,S.
MC"1.ETA,(W6(6;9.<K9;-Q)=AR4C"G8P('8U<3-EQZ+/7,[F?!1W2Q4Q&G?*
M-W=UEZ-W=V1&!9-[MWE.!7E0)0=2157Y>%6G"7G^J)H 6<.M^:FPN:NT>1\,
MB9NFIIL127J]^9L6.5C"Z7K#5)RRAYPA:7LP&3JXR5G-&5K/&3+127Q30YVN
M99W*AYW.9[C;N66%D;B"LKC89Y7F&9_EIY[G"=.V 17G1RU,";[T&7^[6Y69
M>Y7@X9_,02W[9U\#ZI7Q,8((.@)D:8!G:<5J.14?:&AM*8$AQM4AV%\G!FLE
MZ*"'XH%L&=9238]E_<8I2%U()L.%I$0N:,-.EL-1ML.@U<- ",0NVV5?1L0^
M?,1)7(26(@-(J(0AK*!-J !/>&BH.RRJR\4$%4F/%FE'FW-CK+2=9LQAF,9D
M6+S1&[UK*(QV*&YPF%<HIJ>G+8)_RG)6^X@)U\>3^&NB'+.S3;/MV(C_@K.Q
M+'$Z:]L\>XD^NXFY#(I$Z\M@C(J;7<;%_'/(#-I12XN@5;5Q[,FYK;6SW(N$
F:'!N!XQ+*HPN:LT?@<U7-!+,Z)?.&$)<)(U9<@/42,[G/-_TW1.Y
end
===========================================================================
I run xdm to suport some Xterminals and I have 4.1.3. I start it under rc.local.
# xdm startup
if [ -f /usr/openwin/bin/xdm -a -f /usr/openwin/lib/xdm/xdm-config ]; then
/usr/openwin/bin/xdm -config /usr/openwin/lib/xdm/xdm-config
echo 'Starting xdm.'
===========================================================================
I don't remember if I sent you the whole thing or not. This is the complete xdm param's that I use to start it and it works fine. From rc.local:
# xdm startup
OPENWINHOME=/usr/openwin;export OPENWINHOME
if [ -f /usr/openwin/bin/xdm -a -f /usr/openwin/lib/xdm/xdm-config ]; then
/usr/openwin/bin/xdm -config /usr/openwin/lib/xdm/xdm-config
echo 'Starting xdm.'
fi
===========================================================================
I'm only running xdm for some Xterminals to allow them to get their Xsession, for the console I'm using xinitrc. I've attached my Xsession file. Hope this helps you out. If you need more, write back.
===========================================================================
#!/bin/sh
#
# Xsession
#
# This is the program that is run as the client
# for the display manager. This example is
# quite friendly as it attempts to run a per-user
# .xsession file instead of forcing a particular
# session layout
#
#
# If a user does not have a $HOME/.xsession file, then it starts
# OpenWindows as the default environment.
#
# It works equally well with OpenWindows V2 or V3.
#
##########################################################################
# first, find out some basic info for this session
LOGTIME=`date`
export LOGTIME
NCDNAME=`echo $DISPLAY | cut -d: -f1`
export NCDNAME
UNAME=`uname -a `
HOSTOS=`echo $UNAME | awk '{print $1;}'`
#ok, let's put a record in the xdm log/error file for this session
echo 'Login: '$USER' on node '$NCDNAME' on '$LOGTIME
#############################################
# at this point, error messages are user specific
# so, redirect error messages to a file in $HOME
if [ -f $HOME/.xdm-errors ];then
mv $HOME/.xdm-errors $HOME/.xdm-errors.bak
fi
exec > $HOME/.xdm-errors 2>&1 # Redirect error messages
############################################
# Openwindows global environment variables
OPENWINHOME=/usr/openwin
PATH=$OPENWINHOME/bin:$OPENWINHOME/bin/xview:$OPENWINHOME/demo:$PATH
LD_LIBRARY_PATH=/usr/lib:$OPENWINHOME/lib
MANPATH=$OPENWINHOME/share/man:$MANPATH
HELPPATH=$OPENWINHOME/lib/help:$HELPPATH
LOGNAME=$USER
OW=$OPENWINHOME
export OPENWINHOME LD_LIBRARY_PATH MANPATH HELPPATH PATH LOGNAME OW
#############################################
# query server for basic X info...
XDPY=`$OPENWINHOME/bin/xdpyinfo`
export XDPY
VENDOR=`printenv | grep 'vendor string:' | cut -f2 -d:`
export VENDOR
# see if this is a PC running X
if [ `echo ${VENDOR} | grep -c Xview` -gt 0 ]; then
echo "This appears to be PC Xview"
PC=1
else
PC=0
fi
export PC
############################################
# Application environment variables
XDM=$OPENWINHOME/lib/xdm;export XDM
NCDUSER=$usr/ncd/ncd3.0/ncdUser;export NCDUSER
CON=/usr/lib/X11/ncd/configs;export CON
USERPREFS=$HOME/.ncd.prefs;export USERPREFS
NCDLOADPREFS=usr/local/bin/ncdloadprefs;export NCDLOADPREFS
#############################################
# find out what the user's login shell is
# this is used to set up a global environment
shell=`/bin/basename $SHELL` # Find the user's shell type
profile="/etc/profile"
if [ "$shell" = "csh" -a -f $HOME/.login ]; then
profile=/etc/cshrc
elif [ "$shell" = "tcsh" -a -f $HOME/.login ]; then
profile=/etc/cshrc
elif [ "$shell" = "sh" -a -f $HOME/.profile ]; then
profile=$HOME/.profile
elif [ "$shell" = "ksh" -a -f $HOME/.profile ]; then
profile=$HOME/.profile
elif [ "$shell" = "bash" -a -f $HOME/.bash_profile ]; then
profile=$HOME/.bash_profile
fi
export profile
#############################################
# at this point, one could execute $profile. However, be sure
# that there is nothing in $profile to define DISPLAY. Also,
# ensure that there isn't any type of direct tty commands.
#if [ "$shell" = "sh" -o "$shell" = "ksh" ];then
# . $profile
#fi
#
# if needed, set up a default font path
# only if an Xterminal; PC's should already have a font path defined
#
if [ ${PC:=0} -eq 0 ];then
if [ `xset -q | egrep -c 'OpenWindows'` -ge 1 ]; then
echo $DISPLAY': Font path OK'
else
echo $DISPLAY': Setting font path'
# minimum font path on a Sun
# xset +fp /usr/lib/X11/ncd/OtherFonts/OpenWindows.3.0/
fi
fi
#############################################
# Use version 3.0 launcher if server is 3.0
# make sure the path is correct :-)
# This is Xterminal specific
if [ `echo ${NCDVERSION} | grep -c NCD` -lt 1 ];then
NCDVERSION="NCD.2.4.7"
XNCDVERSION="Xncd.2.4.7"
export NCDVERSION XNCDVERSION
fi
RELEASE='vendor release number:'
# make sure these paths are correct...
#if [ `echo $XDPY | egrep -c NCD-SETUP` -lt 1 ];then
if [ `printenv | grep "${RELEASE}" | cut -f2 -d: | grep -c 30` -lt 1 ];then
NCD30=0
LAUNCHER=/home/SE_Tape/$NCDVERSION/binSun4/ncdlauncher
else
NCD30=1
LAUNCHER=/usr/local/bin/X11/ncdlauncher
fi
export LAUNCHER NCD30
#############################################
# this determines if this is an NCD xterminal
# only do this if it is an NCD xterminal
NCDVENDOR="Network Computing Devices"
export NCDVENDOR
if [ `echo $XDPY | grep -c "${NCDVENDOR}"` -ge 1 ]; then
NCDXTERM=1;export NCDXTERM # set an environment variable so we can easily
# tell that this is an NCD
if [ -f $USERPREFS ]; then
if [ -f $NCDLOADPREFS ];then
$NCDLOADPREFS $USERPREFS
fi
fi
# determine type of keyboard attached to NCD Xterminal
KEY=`xmodmap -pk | egrep \
'Select|End|118.*KP_F1|Print|Multi_key' | awk '{ print $3 }'`
KEY=`echo $KEY | awk '{ print $1 }'`
case "$KEY" in
"(Select)")
KEYBD=N108 ;;
"(Print)")
KEYBD=NPS2 ;;
"(End)")
KEYBD=N101 ;;
"(KP_F1)")
KEYBD=N97 ;;
"(Multi_key)")
KEYBD=N107 ;;
"")
KEYBD=unknown ;;
esac
export KEYBD
echo "Keyboard: ${KEYBD}"
# now that we know what kind of keyboard is attached, let's remap it
# for use with SunOS
# you may wish to change these...
case "${KEYBD}" in
"N108")
echo "Remapping $KEYBD"
# xmodmap -e "keycode 9 = quoteleft asciitilde"\
# -e "keycode 14 = Escape asciitilde"\
# -e "keycode 100 = F20"\
# -e "keycode 102 = BackSpace"\
# -e "keysym Select = F16"\
# -e "keysym Insert = F18"\
# -e "keysym Menu = Menu F14"\
# -e "keysym Find = F19"
# -e "keycode 100 = Delete" \
# -e "keysym Delete = F20"\
;;
"N97")
echo "Remapping $KEYBD"
xmodmap -e "keysym KP_F2 = Help" \
-e "keysym F5 = F16"\
-e "keysym F6 = F18"\
-e "keysym F7 = F20"\
-e "keysym F8 = Help"\
-e "keysym KP_Subtract = Prior" \
-e "keysym KP_Separator = Next"
;;
"N101")
echo "Remapping $KEYBD"
xmodmap -e "keysym F1 = Help" \
-e "keysym F5 = F16"\
-e "keysym F6 = F18"\
-e "keysym F7 = F20"\
-e "keysym F8 = Help"
;;
"N107")
echo "Remapping $KEYBD"
;;
"PS2")
echo "Remapping $KEYBD"
xmodmap -e "keysym F1 = Help" \
-e "keysym F5 = F16"\
-e "keysym F6 = F18"\
-e "keysym F7 = F20"\
-e "keysym F8 = Help"\
-e "keysym Delete = F20 F16"\
-e "keysym Insert = F18"
;;
"")
echo "Unknown keyboard: $KEYBD"
;;
esac
else
# set an environment variable so we can easily
# tell that this is an NCD
NCDXTERM=0;export NCDXTERM
fi
#############################################
# set up for failsafe ...
# use F1 instead of Return in passwd field to activate
case $# in
1)
case $1 in
failsafe)
echo 'Using FailSafe...'
if [ ${NCDXTERM:=0} -eq 1 ]; then
if [ -f $HOME/.Xdefaults ]; then
# Load Users X11 resource database
xrdb -load $HOME/.Xdefaults
fi
rsh $NCDNAME wm
exec xterm -T FailSafe -fg black -bg white -geometry 80x24-0-0 -ls
else
exec xterm -T FailSafe -fg black -bg white -geometry 80x24-0-0 -ls
fi
;;
esac
;;
esac
#############################################
# first, let's look for a .xinitrc file
startup=$HOME/.xsession
if [ -f $startup ]; then
if [ -x $startup ]; then
exec $startup
else
exec /bin/sh $startup
fi
fi
# ok, so is there a .xsession file...
startup=$HOME/.xinitrc
if [ -f $startup ]; then
if [ -x $startup ]; then
exec $startup
else
exec /bin/sh $startup
fi
else
# No personalized startup files, so let's start up an OpenWindows
# environment. We will also try to reposition icons if the display
# size is different from 1152x900
echo Initialize Default Environment
if [ -f $HOME/.Xdefaults ]; then
# Load Users X11 resource database
xrdb -load $HOME/.Xdefaults
else
# Load Default X11 resource database
xrdb -load $OPENWINHOME/lib/xdm/Xdefaults
fi
# find a window manager
if [ ${NCDXTERM:=0} -eq 1 ];then
rsh $NCDNAME wm
else
if [ -f $OPENWINHOME/bin/olwm ];then
# Start the OLWM window mgr
$OPENWINHOME/bin/olwm -3d&
fi
fi
if [ ${NCDXTERM:=0} -eq 1 ];then
rsh $NCDNAME lat -name allegra -T ALLEGRA
rsh $NCDNAME lat -name allegra -T ALLEGRA
rsh $NCDNAME telnet -name help -T HELP
/usr/local/bin/ncdlauncher
else
$OPENWINHOME/bin/cmdtool&
wait
fi
fi
========================================================================
Here is the .login file. I will send you the Xsession file
separately. Everything else I left the same. You may want to
use a file called .xsession in the home directory and source
that instead of .login to avoid confusion. I would highly
recommend that. This way, if you have some users not on X type
terminals you don't have to change the .login for them.....
#!/bin/sh
OPENWINHOME=/usr/openwin
PATH=$OPENWINHOME/bin:$PATH
LD_LIBRARY_PATH=$OPENWINHOME/lib
MANPATH=$OPENWINHOME/man:$MANPATH
export LD_LIBRARY_PATH PATH MANPATH
#
# Force server to change userid to $USER
#
$OPENWINHOME/bin/xhost +$USER@ > /dev/null 2>&1
case $# in
1)
case $1 in
failsafe)
exec xterm -geometry 80x24-0-0 -ls
;;
esac
esac
startup=$HOME/.xinitrc
resources=$HOME/.Xresources
if [ -f $startup ]; then
exec /bin/sh $startup
else
if [ -f $resources ]; then
xrdb -load $resources
fi
olwm &
fi
========================================================================
Here is the Xsession file. You have to run it as
. $HOME/.login because this is a bourne shell script
and the file you are executing is bourne shell as
well.
#!/bin/sh
# @(#)Xsession 1.3 91/10/21
#
# Xsession
#
# This is the program that is run as the client
# for the display manager. This example is
# quite friendly as it attempts to run a per-user
# .xsession file instead of forcing a particular
# session layout
#
#OPENWINHOME=${OPENWINHOME:-/usr/openwin}
#LD_LIBRARY_PATH=$OPENWINHOME/lib
#PATH=$OPENWINHOME/bin:$PATH
#MANPATH=$OPENWINHOME/man:$MANPATH
#export LD_LIBRARY_PATH PATH MANPATH
# try source .login/.profile
#
#case $SHELL in
#"/bin/csh")
# source $HOME/.login
# source $HOME/.cshrc
# ;;
#"/bin/ksh")
# . $HOME/.profile
# ;;
#esac
. $HOME/.login
#
# Force server to change userid to $USER
#
#$OPENWINHOME/bin/xhost +$USER@ > /dev/null 2>&1
#case $# in
#1)
# case $1 in
# failsafe)
# exec xterm -geometry 80x24-0-0 -ls
# ;;
# esac
#esac
#startup=$HOME/.xinitrc
#resources=$HOME/.Xresources
#
#if [ -f $startup ]; then
# exec /bin/sh $startup
#else
# if [ -f $resources ]; then
# xrdb -load $resources
# fi
# olwm &
# exec xterm -geometry 80x24+10+10 -ls
##fi
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:07:46 CDT