#!/bin/sh set -o errexit # First argument of this script is the package name. # Reading system configuration informations, functions and package versions. source ../sysinfos source ../functions source ../packages-list # Used by startx cat > /etc/skel/.xinitrc << "EOF" # ~/.xinitrc 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 # 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,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 # # ********************************************************************** # Files section. # ********************************************************************** Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/X11R6/lib/modules" # Module search path FontPath "_HV_FONTS_PATH_/TrueType" # Standard XFree86 Fonts FontPath "/usr/X11R6/lib/X11/fonts/TTF" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/X11R6/lib/X11/fonts/misc/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/local" FontPath "/usr/X11R6/lib/X11/fonts/Speedo" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" EndSection # ********************************************************************** # Dynamically loadable modules section. # ********************************************************************** Section "Module" Load "dbe" # Double buffer extension # This loads the miscellaneous extensions module, and disables # initialisation of the XFree86-DGA extension within that module. SubSection "extmod" Option "omit xfree86-dga" # don't initialise the DGA extension EndSubSection # This loads the Type1 and FreeType font modules Load "type1" Load "speedo" Load "freetype" Load "glx" Load "dri" EndSection # ********************************************************************** # Input devices. # ********************************************************************** Section "InputDevice" Identifier "Keyboard1" Driver "keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "_XF86_KEYBOARD_LAYOUT_" Option "XkbVariant" "_XF86_KEYBOARD_VARIANT_" Option "XkbOptions" "_XF86_KEYBOARD_OPTIONS_" Option "AutoRepeat" "500 30" EndSection Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Emulate3Buttons" Option "Protocol" "auto" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5" Option "Buttons" "5" EndSection # ********************************************************************** # Monitor section # No need to specify VertRefresh and HorizSync, as DDC2 data will # be used (if monitor is recent and supports it). # ********************************************************************** Section "Monitor" Identifier "Monitor1" VendorName "Unknown" ModelName "Unknown" EndSection # ********************************************************************** # Device (video card) section # ********************************************************************** Section "Device" Identifier "VideoCard1" Driver "_VIDEO_CARD_DRIVER_" EndSection # ********************************************************************** # Screen section # ********************************************************************** Section "Screen" Identifier "Screen1" Device "VideoCard1" Monitor "Monitor1" DefaultColorDepth 24 Subsection "Display" Depth 24 Modes "1024x768" "800x600" ViewPort 0 0 EndSubsection EndSection # ********************************************************************** # Layout(s) section # ********************************************************************** Section "ServerLayout" Identifier "Default" Screen "Screen1" InputDevice "Mouse1" "CorePointer" InputDevice "Keyboard1" "CoreKeyboard" EndSection EOF # The ! character is the SED delimiter sed -i -e "s!_HV_FONTS_PATH_!${HV_FONTS_PATH}!g" /etc/X11/xorg.conf sed -i -e "s!_VIDEO_CARD_DRIVER_!${XF86_CARD_DRIVER}!g" /etc/X11/xorg.conf sed -i -e "s!_XF86_KEYBOARD_LAYOUT_!${HV_XF86_KEYBOARD_LAYOUT}!g" /etc/X11/xorg.conf 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 exit $?