X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=stage4%2Fconfigure-xorg;h=95bc530139516ca100ec9754c17eff0a97f89be2;hb=7f1a3e5d69d0b1d64619604c30243e0070dc09ad;hp=73a8799cd32adeaf82f6babab1bd289c041aecfb;hpb=5f02c8c4b5fe6640bcdb61d1006256289a57c222;p=hvlinux.git diff --git a/stage4/configure-xorg b/stage4/configure-xorg index 73a8799..95bc530 100755 --- a/stage4/configure-xorg +++ b/stage4/configure-xorg @@ -8,32 +8,131 @@ source ../sysinfos source ../functions source ../packages-list +# Used by startx +cat > /etc/skel/.xinitrc << "EOF" +# ~/.xinitrc -exit 0 +dbus-launch --exit-with-session wmaker +EOF +cat > /etc/skel/.Xdefaults << "EOF" +xterm*scrollBar: false +xterm*rightScrollBar: false +xterm*saveLines: 1000 +xterm*geometry: 120x45+70+50 +xterm*background: #000000 +xterm*foreground: #A8A8A8 +xterm*color0: #000000 +xterm*color1: #A80000 +xterm*color2: #00A800 +xterm*color3: #A85400 +xterm*color4: #0000A8 +xterm*color5: #A800A8 +xterm*color6: #00A8A8 +xterm*color7: #A8A8A8 +xterm*color8: #545054 +xterm*color9: #F85450 +xterm*color10: #50FC50 +xterm*color11: #F2FC50 +xterm*color12: #5054F8 +xterm*color13: #F854F8 +xterm*color14: #50FCF8 +xterm*color15: #F8FCF8 +EOF +cat > /etc/skel/.xsession << "EOF" +#!/bin/sh +# ~/.xsession +userresources=$HOME/.Xresources +usermodmap=$HOME/.Xmodmap +sysresources=/usr/lib/X11/xinit/.Xresources +sysmodmap=/usr/lib/X11/xinit/.Xmodmap -# Many package are still trying to find X in /usr/X11R6. -# Until then, you can create a symbolic link to satisfy the /usr/X11R6 -# requirement so that you won't be inconvenienced with a package build -# failure due to this known issue. -#ln -scfT ${XORG_PREFIX} /usr/X11R6 +# merge in defaults and keymaps + +if [ -f $sysresources ]; then + xrdb -merge $sysresources +fi + +if [ -f $sysmodmap ]; then + xmodmap $sysmodmap +fi + +if [ -f "$userresources" ]; then + xrdb -merge "$userresources" +fi + +if [ -f "$usermodmap" ]; then + xmodmap "$usermodmap" +fi + +# now, we see if xdm/gdm/kdm has asked for a specific environment + +case $# in + 1) + case $1 in + wmaker) + exec dbus-launch --exit-with-session wmaker + ;; + failsafe) + exec xterm -geometry 80x24-0-0 + ;; + default) + exec dbus-launch --exit-with-session wmaker + ;; + *) + exec dbus-launch --exit-with-session wmaker + ;; + esac + ;; + *) + exec dbus-launch --exit-with-session wmaker + ;; +esac + +exit 0 +EOF + +chmod 755 /etc/skel/.xsession + +cp /etc/skel/.{xinitrc,Xdefaults,xsession} /root +cp /etc/skel/.{xinitrc,Xdefaults,xsession} /home/${REGUSER} + +# When needed, the X Window System creates the directory /tmp/.ICE-unix if it +# does not exist. If this directory is not owned by root, the X Window System +# delays startup by a few seconds and also appends a warning to the logfile. +# This also affects startup of other applications. To improve performance, it +# is advisable to manually create the directory before the X Window System uses +# it. +cat >> /etc/sysconfig/createfiles << "EOF" +/tmp/.ICE-unix dir 1777 root root +EOF # Packages in Xorg store their configuration files in $XORG_PREFIX/lib/X11 # by default. This is strictly against FHS guidelines. Correct the # installation /etc/X11 and create symlinks in the original location: mkdir -v -p /etc/X11 -for file in ${XORG_PREFIX}/{lib/X11/xinit,share/X11/{app-defaults,twm}}; do - mv -v $file /etc/X11/ 2> /dev/null - ln -svfT /etc/X11/$(basename $file) $file +for file in ${XORG_PREFIX}/{lib/X11/{xinit,xdm},share/X11/app-defaults}; do + if [ ! -h ${file} ]; then + mv -v ${file} /etc/X11/ 2> /dev/null + ln -svfT /etc/X11/$(basename $file) $file + fi done +if [ "x${INST_TYPE}" = "xltsp-server" ]; then + # Enable remote xdm login for LTSP clients + sed -i -e "s@^\(DisplayManager.requestPort.*\)@!\1@g" /etc/X11/xdm/xdm-config + chmod 644 /etc/X11/xdm/Xaccess + sed -i -e "s@^#\(\*[\t ]*#any host can get a login window\)@\1@g" /etc/X11/xdm/Xaccess + chmod 444 /etc/X11/xdm/Xaccess +fi - - - - +# Many package are still trying to find X in /usr/X11R6. +# Until then, you can create a symbolic link to satisfy the /usr/X11R6 +# requirement so that you won't be inconvenienced with a package build +# failure due to this known issue. +#ln -scfT ${XORG_PREFIX} /usr/X11R6 cat > /etc/X11/xorg.conf << "EOF" # xorg.conf @@ -157,128 +256,4 @@ sed -i -e "s!_XF86_KEYBOARD_LAYOUT_!${HV_XF86_KEYBOARD_LAYOUT}!g" /etc/X11/xorg. sed -i -e "s!_XF86_KEYBOARD_VARIANT_!${HV_XF86_KEYBOARD_VARIANT}!g" /etc/X11/xorg.conf sed -i -e "s!_XF86_KEYBOARD_OPTIONS_!${HV_XF86_KEYBOARD_OPTIONS}!g" /etc/X11/xorg.conf -cat > /etc/skel/.xinitrc << "EOF" -# ~/.xinitrc - -exec wmaker -EOF - -cat > /etc/skel/.Xdefaults << "EOF" -xterm*scrollBar: false -xterm*rightScrollBar: false -xterm*saveLines: 1000 -xterm*geometry: 120x45+70+50 -xterm*background: #000000 -xterm*foreground: #A8A8A8 -xterm*color0: #000000 -xterm*color1: #A80000 -xterm*color2: #00A800 -xterm*color3: #A85400 -xterm*color4: #0000A8 -xterm*color5: #A800A8 -xterm*color6: #00A8A8 -xterm*color7: #A8A8A8 -xterm*color8: #545054 -xterm*color9: #F85450 -xterm*color10: #50FC50 -xterm*color11: #F2FC50 -xterm*color12: #5054F8 -xterm*color13: #F854F8 -xterm*color14: #50FCF8 -xterm*color15: #F8FCF8 -EOF - -cat > /etc/skel/.xsession << "EOF" -#!/bin/sh -# ~/.xsession - -userresources=$HOME/.Xresources -usermodmap=$HOME/.Xmodmap -sysresources=/usr/X11R6/lib/X11/xinit/.Xresources -sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap - -# merge in defaults and keymaps - -if [ -f $sysresources ]; then - xrdb -merge $sysresources -fi - -if [ -f $sysmodmap ]; then - xmodmap $sysmodmap -fi - -if [ -f $userresources ]; then - xrdb -merge $userresources -fi - -if [ -f $usermodmap ]; then - xmodmap $usermodmap -fi - -# now, we see if xdm/gdm/kdm has asked for a specific environment - -case $# in - 1) - case $1 in - kde) - exec dbus-launch --exit-with-session startkde - ;; - twm) - xsetroot -solid rgb:33/33/55 & - xclock -digital -update 1 -geometry 180x23-5+5 & - opera -geometry 1100x950+150+10 -iconic -title "Opera 6.0 TP3" & - emacs -geometry 140x60-5+100 -iconic -title "Emacs" & - xterm -ls -geometry 160x60+25-25 -title "xterm" & - exec dbus-launch --exit-with-session twm - ;; - wmaker) - exec dbus-launch --exit-with-session wmaker - ;; - failsafe) - exec xterm -geometry 80x24-0-0 - ;; - default) - exec dbus-launch --exit-with-session wmaker - ;; - *) - exec dbus-launch --exit-with-session wmaker - ;; - esac - ;; - *) - exec dbus-launch --exit-with-session wmaker - ;; -esac - -exit 0 -EOF - -chmod 755 /etc/skel/.xsession - -cp /etc/skel/.{xinitrc,Xdefaults,xsession} /root -cp /etc/skel/.{xinitrc,Xdefaults,xsession} /home/${REGUSER} - -##var_add_path "PATH" /etc/profile "/usr/X11R6/bin" -#var_add_path "PKG_CONFIG_PATH" /etc/profile "/usr/X11R6/lib/pkgconfig" -#var_export "PKG_CONFIG_PATH" /etc/profile -#var_add_path "MANPATH" /etc/profile "/usr/X11R6/man" -#var_export "MANPATH" /etc/profile -#var_add_shadow "ENV_SUPATH" /etc/login.defs "/usr/X11R6/bin" -#string_add "/usr/X11R6/lib" /etc/ld.so.conf - - -if [ "x${INST_TYPE}" = "xltsp-server" ]; then - # Enable remote xdm login for LTSP clients - sed -i -e "s@^\(DisplayManager.requestPort.*\)@!\1@g" /etc/X11/xdm/xdm-config - chmod 644 /etc/X11/xdm/Xaccess - sed -i -e "s@^#\(\*[\t ]*#any host can get a login window\)@\1@g" /etc/X11/xdm/Xaccess - chmod 444 /etc/X11/xdm/Xaccess -fi - - When needed, the X Window System creates the directory /tmp/.ICE-unix if it does not exist. If this directory is not owned by root, the X Window System delays startup by a few seconds and also appends a warning to the logfile. This also affects startup of other applications. To improve performance, it is advisable to manually create the directory before the X Window System uses it. Add the file creation to /etc/sysconfig/createfiles that is sourced by the /etc/rc.d/init.d/cleanfs startup script. - -cat >> /etc/sysconfig/createfiles << "EOF" -/tmp/.ICE-unix dir 1777 root root -EOF - exit $?