Magellan Linux

Diff of /trunk/magellan-initscripts/etc/rc.d/init.d/hwdetect

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3 by niro, Mon Dec 13 22:52:07 2004 UTC revision 479 by niro, Wed Apr 25 13:26:33 2007 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    # $Header: /home/cvsd/magellan-cvs/magellan-src/magellan-initscripts/etc/rc.d/init.d/hwdetect,v 1.6 2007-04-25 13:26:33 niro Exp $
3    
4  # note: must be startet before /etc/rc.d/init.d/modules !!!  # note: must be startet before /etc/rc.d/init.d/modules !!!
5    
# Line 11  Line 12 
12  #%before:  #%before:
13  #%after:  #%after:
14    
15  write_x11_config() {  add_x11conf()
16    {
17     local var="$1"
18     echo "${var}" >> ${xfconfig} || die "add_x11conf() adding \$var"
19    }
20    
21    add_modconf()
22    {
23     local var="$1"
24     echo "${var}" >> /etc/modules.autoload.d/kernel-$(kernel_major_version) || die "add_modconf() adding \$var"
25    }
26    
27    write_x11_config()
28    {
29   local xserver   local xserver
30   local xfconfig   local xfconfig
31    
32   local HAS_VNC   local HAS_VNC
33     local USE_AIGLX
34   #xfree or xorg ?  
35     local rgbpath
36     local fontpath
37     local modulespath
38     local i
39    
40     # check command line for params
41     for i in $(cat /proc/cmdline)
42     do
43     case "${i}" in
44     aiglx) USE_AIGLX=yes;;
45     esac
46     done
47    
48     # xfree or xorg ?
49   xserver="$(readlink /usr/X11R6/bin/X)"   xserver="$(readlink /usr/X11R6/bin/X)"
50    
51   case ${xserver} in   case ${xserver} in
# Line 28  write_x11_config() { Line 56  write_x11_config() {
56   xfconfig=/etc/X11/XF86Config   xfconfig=/etc/X11/XF86Config
57   ;;   ;;
58   *)   *)
59   echo "Unkown xserver. aborting."   echo "    Unkown xserver. aborting."
60   exit 1   exit 1
61   ;;   ;;
62   esac   esac
63    
64   #got we vnc support ?   # have we vnc support ?
65   if [ -f /usr/X11R6/lib/modules/vnc.so ]   if [[ -f /usr/X11R6/lib/modules/vnc.so ]] ||
66     [[ -f /usr/X11R6/lib/modules/extensions/vnc.so ]] ||
67     [[ -f /usr/lib/xorg/modules/extensions/vnc.so ]]
68   then   then
69   HAS_VNC="yes"   HAS_VNC="yes"
70   else   else
71   HAS_VNC="no"   HAS_VNC="no"
72   fi   fi
73    
74     # show which xserver we going to use
  #show which server we use  
75   echo -en ${COLOREDSTAR}"Using '${xserver}' as x11-server "   echo -en ${COLOREDSTAR}"Using '${xserver}' as x11-server "
76    
77   #show if we have vnc   # show if we have vnc
78   if [ "${HAS_VNC}" = "yes" ]   if [[ ${HAS_VNC} = yes ]]
79   then   then
80   echo "with vnc enabled ..."   echo "with vnc enabled ..."
81   else   else
82   echo "..."   echo "..."
83   fi   fi
84    
85   #create a new clear xfconfig file   # create a new clear xfconfig file
86   echo '# Generated with hwdetect, part of Magellan-Linux initscripts.' > ${xfconfig}   echo '# Generated with hwdetect, part of Magellan-Linux initscripts.' > ${xfconfig}
87   echo '' >> ${xfconfig}   echo '' >> ${xfconfig}
88    
89   #write modules  
90   echo '' >> ${xfconfig}   # write modules
91   echo 'Section "Module"' >> ${xfconfig}   add_x11conf ''
92   echo '    Load        "dbe"' >> ${xfconfig}   add_x11conf 'Section "Module"'
93   echo '    SubSection  "extmod"' >> ${xfconfig}   add_x11conf '    Load        "dbe"'
94   echo '      Option    "omit xfree86-dga"' >> ${xfconfig}   add_x11conf '    SubSection  "extmod"'
95   echo '    EndSubSection' >> ${xfconfig}   add_x11conf '      Option    "omit xfree86-dga"'
96   echo '    Load        "type1"' >> ${xfconfig}   add_x11conf '    EndSubSection'
97   echo '    Load        "speedo"' >> ${xfconfig}   add_x11conf '    Load        "type1"'
98   echo '    Load        "freetype"' >> ${xfconfig}   add_x11conf '    Load        "speedo"'
99   echo '#    Load        "xtt"' >> ${xfconfig}   add_x11conf '    Load        "freetype"'
100   echo '#    Load       "glx"' >> ${xfconfig}   add_x11conf '#    Load        "xtt"'
101   echo '    Load       "dri"' >> ${xfconfig}   if [[ ${USE_AIGLX} = yes ]]
102     then
103   [ "${HAS_VNC}" = "yes" ] && echo '    Load       "vnc"' >> ${xfconfig}   add_x11conf '     Load       "glx"'
104     else
105   echo 'EndSection' >> ${xfconfig}   add_x11conf '#    Load       "glx"'
106     fi
107     add_x11conf '    Load       "dri"'
108   #fonts  
109   echo '' >> ${xfconfig}   [[ ${HAS_VNC} = yes ]] && add_x11conf '    Load       "vnc"'
110   echo 'Section "Files"' >> ${xfconfig}  
111   echo '    RgbPath "/usr/X11R6/lib/X11/rgb"' >> ${xfconfig}   add_x11conf 'EndSection'
112    
113     # enable composite for aiglx
114     if [[ ${USE_AIGLX} = yes ]]
115     then
116     add_x11conf 'Section "Extensions"'
117     add_x11conf '    Option     "Composite"      "Enable"'
118     add_x11conf 'EndSection'
119     fi
120    
121    
122     # fonts
123   case ${xserver} in   case ${xserver} in
124   Xorg)   Xorg)
125   echo '    FontPath   "/usr/share/fonts/local/"' >> ${xfconfig}   fontpath="/usr/share/fonts"
126   echo '    FontPath   "/usr/share/fonts/misc/"' >> ${xfconfig}   rgbpath="/usr/share/X11"
127   echo '    FontPath   "/usr/share/fonts/75dpi/:unscaled"' >> ${xfconfig}   modulespath="/usr/lib/xorg/modules"
  echo '    FontPath   "/usr/share/fonts/100dpi/:unscaled"' >> ${xfconfig}  
  echo '    #prevents slow startup when disabled -> speedo, type1' >> ${xfconfig}  
  echo '    #FontPath   "/usr/share/fonts/Speedo/"' >> ${xfconfig}  
  echo '    #FontPath   "/usr/share/fonts/Type1/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/share/fonts/TrueType/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/share/fonts/freefont/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/share/fonts/75dpi/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/share/fonts/100dpi/"' >> ${xfconfig}  
128   ;;   ;;
129   XFree86)   XFree86)
130   echo '    FontPath   "/usr/X11R6/lib/X11/fonts/local/"' >> ${xfconfig}   fontpath="/usr/X11R6/lib/X11/fonts"
131   echo '    FontPath   "/usr/X11R6/lib/X11/fonts/misc/"' >> ${xfconfig}   rgbpath="/usr/X11R6/lib/X11"
132   echo '    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"' >> ${xfconfig}   modulespath="/usr/X11R6/lib/modules"
  echo '    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"' >> ${xfconfig}  
  echo '    #prevents slow startup when disabled -> speedo, type1' >> ${xfconfig}  
  echo '    #FontPath   "/usr/X11R6/lib/X11/fonts/Speedo/"' >> ${xfconfig}  
  echo '    #FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/X11R6/lib/X11/fonts/TrueType/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/X11R6/lib/X11/fonts/freefont/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"' >> ${xfconfig}  
  echo '    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"' >> ${xfconfig}  
133   ;;   ;;
134   esac   esac
135    
136   echo '#    ModulePath "/usr/X11R6/lib/modules"' >> ${xfconfig}   add_x11conf ''
137   echo 'EndSection' >> ${xfconfig}   add_x11conf 'Section "Files"'
138     add_x11conf "    RgbPath    \"${rgbpath}/rgb\""
139     add_x11conf "    FontPath   \"${fontpath}/local/\""
140   #server flags   add_x11conf "    FontPath   \"${fontpath}/misc/\""
141   echo '' >> ${xfconfig}   add_x11conf "    FontPath   \"${fontpath}/75dpi/:unscaled\""
142   echo 'Section "ServerFlags"' >> ${xfconfig}   add_x11conf "    FontPath   \"${fontpath}/100dpi/:unscaled\""
143   echo '#    Option "DontVTSwitch"' >> ${xfconfig}   add_x11conf '    #prevents slow startup when disabled -> speedo, type1'
144   echo '#    Option "DontZap"' >> ${xfconfig}   add_x11conf "    #FontPath  \"${fontpath}/Speedo/\""
145   echo '#    Option "Dont Zoom"' >> ${xfconfig}   add_x11conf "    #FontPath  \"${fontpath}/fonts/Type1/\""
146   echo 'EndSection' >> ${xfconfig}   add_x11conf "    FontPath   \"${fontpath}/fonts/TrueType/\""
147     add_x11conf "    FontPath   \"${fontpath}/freefont/\""
148     add_x11conf "    FontPath   \"${fontpath}/75dpi/\""
149   #keyboard   add_x11conf "    FontPath   \"${fontpath}/100dpi/\""
150   echo '' >> ${xfconfig}   add_x11conf "#    ModulePath \"${modulespath}\""
151   echo 'Section "InputDevice"' >> ${xfconfig}   add_x11conf 'EndSection'
152   echo '    Identifier "Keyboard1"' >> ${xfconfig}  
153     # xserver flags
154     add_x11conf ''
155     add_x11conf 'Section "ServerFlags"'
156     add_x11conf '#    Option "DontVTSwitch"'
157     add_x11conf '#    Option "DontZap"'
158     add_x11conf '#    Option "Dont Zoom"'
159     add_x11conf 'EndSection'
160    
161    
162     # keyboard
163     add_x11conf ''
164     add_x11conf 'Section "InputDevice"'
165     add_x11conf '    Identifier "Keyboard1"'
166    
167   case ${xserver} in   case ${xserver} in
168   Xorg)   Xorg) add_x11conf '    Driver "kbd"' ;;
169   echo '    Driver "kbd"' >> ${xfconfig}   XFree86) add_x11conf '    Driver "Keyboard"' ;;
  ;;  
  XFree86)  
  echo '    Driver "Keyboard"' >> ${xfconfig}  
  ;;  
170   esac   esac
171    
172   echo '    Option "AutoRepeat" "500 30"' >> ${xfconfig}   add_x11conf '    Option "AutoRepeat" "500 30"'
173   echo '#    Option "Xleds"      "1 2 3"' >> ${xfconfig}   add_x11conf '#    Option "Xleds"      "1 2 3"'
174    
175   case ${xserver} in   case ${xserver} in
176   Xorg)   Xorg)
177   echo '    Option "XkbRules" "xorg"' >> ${xfconfig}   add_x11conf '    Option "XkbRules" "xorg"'
178   ;;   ;;
179   XFree86)   XFree86)
180   echo '    Option "XkbRules" "xfree86"' >> ${xfconfig}   add_x11conf '    Option "XkbRules" "xfree86"'
181   ;;   ;;
182   esac   esac
183    
184   echo '    Option "XkbModel" "pc104"' >> ${xfconfig}   add_x11conf '    Option "XkbModel" "pc104"'
185   echo '    Option "XkbLayout" "de"' >> ${xfconfig}   add_x11conf '    Option "XkbLayout" "de"'
186   echo 'EndSection' >> ${xfconfig}   add_x11conf 'EndSection'
187    
188    
189   #mouse   # mouse
190   #to be safe   # to be safe
191   local MOUSETYPE XMOUSETYPE FULLNAME DEVICE   local MOUSETYPE XMOUSETYPE FULLNAME DEVICE
192   #get config   # get config
193   [ -f /etc/sysconfig/hwsetup/mouse ] && source /etc/sysconfig/hwsetup/mouse   [ -f /etc/sysconfig/hwsetup/mouse ] && source /etc/sysconfig/hwsetup/mouse
194    
195   echo '' >> ${xfconfig}   add_x11conf ''
196   echo 'Section "InputDevice"' >> ${xfconfig}   add_x11conf 'Section "InputDevice"'
197   echo '    Identifier "Mouse1"' >> ${xfconfig}   add_x11conf '    Identifier "Mouse1"'
198   echo '    Driver "mouse"' >> ${xfconfig}   add_x11conf '    Driver "mouse"'
199    
200   if [ -n "${XMOUSETYPE}" ]   if [[ -n ${XMOUSETYPE} ]]
201   then   then
202   echo "    Option \"Protocol\"    \"${XMOUSETYPE}\"" >> ${xfconfig}   add_x11conf "    Option \"Protocol\"    \"${XMOUSETYPE}\""
203   else   else
204   echo '    Option "Protocol"    "PS/2"' >> ${xfconfig}   add_x11conf '    Option "Protocol"    "PS/2"'
205   fi   fi
206    
207   if [ -n "${DEVICE}" ]   if [[ -n ${DEVICE} ]]
208   then   then
209   #show what we got   # show what we got
210   echo -e ${COLOREDSTAR}"Mouse (${MOUSE_FULLNAME} found at ${MOUSE_DEVICE}"   echo -e ${COLOREDSTAR}"Mouse (${MOUSE_FULLNAME} found at ${MOUSE_DEVICE}"
211    
212   #is there any mouse module than try to load it   # is there any mouse module than try to load it
213   if [ "${MOUSETYPE}" = "ps2" ]   if [[ ${MOUSETYPE} = ps2 ]]
214   then   then
215   #kernel 2.6   # kernel 2.6
216   if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]   if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]
217   then   then
218   echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."   echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."
219   echo "psmouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   add_modconf 'psmouse'
220   fi   fi
221    
222   #kernel 2.4   # kernel 2.4
223   #if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]   #if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]
224   #then   #then
225   # echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."   # echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."
226   # echo "psmouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   # echo "psmouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)
227   #fi   #fi
228   else   else
229   #kernel 2.6   # kernel 2.6
230   if [ -a /lib/modules/$(uname -r)/kernel/drivers/input/mouse/sermouse.ko ]   if [ -a /lib/modules/$(uname -r)/kernel/drivers/input/mouse/sermouse.ko ]
231   then   then
232   echo -e ${COLOREDSTAR}"Loading kernel-module 'sermouse' ..."   echo -e ${COLOREDSTAR}"Loading kernel-module 'sermouse' ..."
233   echo "sermouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   add_modconf 'sermouse'
234   fi   fi
235    
236   #kernel 2.4   # kernel 2.4
237   #if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]   #if [ -f /lib/modules/$(uname -r)/kernel/drivers/input/mouse/psmouse.ko ]
238   #then   #then
239   # echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."   # echo -e ${COLOREDSTAR}"Loading kernel-module 'psmouse' ..."
240   # echo "psmouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   # echo "psmouse" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)
241   #fi   #fi
242   fi   fi
243   echo "    Option \"Device\"      \"${DEVICE}\"" >> ${xfconfig}   add_x11conf "    Option \"Device\"      \"${DEVICE}\""
244   else   else
245   echo '    Option "Device"      "/dev/mouse"' >> ${xfconfig}   add_x11conf '    Option "Device"      "/dev/mouse"'
246   fi   fi
247    
248   echo '    Option "Resolution" "1200"' >> ${xfconfig}   add_x11conf '    Option "Resolution" "1200"'
249    
250   [ "${XMOUSETYPE}" = "IMPS/2" ] && echo '    Option "ZAxisMapping" "4 5"' >> ${xfconfig}   [[ ${XMOUSETYPE} = IMPS/2 ]] && add_x11conf '    Option "ZAxisMapping" "4 5"'
251    
252   echo 'EndSection' >> ${xfconfig}   add_x11conf 'EndSection'
253    
254   #to be safe   # to be safe
255   unset MOUSETYPE XMOUSETYPE FULLNAME DEVICE   unset MOUSETYPE XMOUSETYPE FULLNAME DEVICE
256    
257    
258   #vnc keyboard && mouse   # vnc keyboard && mouse
259   if [ "${HAS_VNC}" = "yes" ]   if [[ ${HAS_VNC} = yes ]]
260   then   then
261   echo '' >> ${xfconfig}   add_x11conf ''
262   echo 'Section "InputDevice"' >> ${xfconfig}   add_x11conf 'Section "InputDevice"'
263   echo '    Identifier "vncKeyboard"' >> ${xfconfig}   add_x11conf '    Identifier "vncKeyboard"'
264   echo '    Driver "rfbkeyb"' >> ${xfconfig}   add_x11conf '    Driver "rfbkeyb"'
265   echo 'EndSection' >> ${xfconfig}   add_x11conf 'EndSection'
266    
267   echo '' >> ${xfconfig}   add_x11conf ''
268   echo 'Section "InputDevice"' >> ${xfconfig}   add_x11conf 'Section "InputDevice"'
269   echo '    Identifier "vncMouse"' >> ${xfconfig}   add_x11conf '    Identifier "vncMouse"'
270   echo '    Driver "rfbmouse"' >> ${xfconfig}   add_x11conf '    Driver "rfbmouse"'
271   echo 'EndSection' >> ${xfconfig}   add_x11conf 'EndSection'
272   fi   fi
273    
274    
275   #monitor   # monitor
276   echo '' >> ${xfconfig}   add_x11conf ''
277   echo 'Section "Monitor"' >> ${xfconfig}  
278   echo '    Identifier  "mon0"' >> ${xfconfig}   # using knoppix ddcxinfo
279   echo '    HorizSync   28 - 96' >> ${xfconfig}   if [[ -x /sbin/ddcxinfo-knoppix ]]
280   echo '    VertRefresh 50-60' >> ${xfconfig}   then
281   echo '    Option      "DPMS"' >> ${xfconfig}   ddcxinfo-knoppix -monitor >> ${xfconfig}
282   echo 'EndSection' >> ${xfconfig}   else
283     # some conservative default values
284     add_x11conf 'Section "Monitor"'
285   #vga   add_x11conf '    Identifier  "mon0"'
286   #to be safe   add_x11conf '    HorizSync   28 - 96'
287     add_x11conf '    VertRefresh 50-60'
288     add_x11conf '    Option      "DPMS"'
289     add_x11conf 'EndSection'
290     fi
291    
292     # vga
293     # to be safe
294   local XSERVER XMODULE XDESC   local XSERVER XMODULE XDESC
295    
296   #get config   # get config
297   [ -f /etc/sysconfig/hwsetup/xserver ] && source /etc/sysconfig/hwsetup/xserver   [ -f /etc/sysconfig/hwsetup/xserver ] && source /etc/sysconfig/hwsetup/xserver
298    
299   echo '' >> ${xfconfig}   add_x11conf ''
300   echo 'Section "Device"' >> ${xfconfig}   add_x11conf 'Section "Device"'
301   echo '    Identifier  "vga0"' >> ${xfconfig}   add_x11conf '    Identifier  "vga0"'
302    
303   if [ -n "${XMODULE}" ]   if [[ -n ${XMODULE} ]]
304   then   then
305     # vmware module has some probs with fb consoles
306     # very dirty glyphes appear, so we use vesa instead
307     [[ ${XMODULE} = vmware ]] && XMODULE="vesa"
308    
309     # i810 needs the intel-agp kernel module to run probably
310     [[ ${XMODULE} = i810 ]] && \
311     [ -f /lib/modules/$(uname -r)/kernel/drivers/char/agp/intel-agp.ko ] && \
312     add_modconf 'intel-agp'
313    
314   echo -e ${COLOREDSTAR}"Video: ${XDESC}"   echo -e ${COLOREDSTAR}"Video: ${XDESC}"
315   echo -e ${COLOREDSTAR}"Video module: ${XMODULE}"   echo -e ${COLOREDSTAR}"Video module: ${XMODULE}"
316   echo "    Driver      \"${XMODULE}\"" >> ${xfconfig}   add_x11conf "    Driver      \"${XMODULE}\""
317   else   else
318   echo -e ${COLOREDSTAR}"Video unknown, trying to use the standard 'vesa' module ..."   echo -e ${COLOREDSTAR}"Video unknown, trying to use the standard 'vesa' module ..."
319   echo '    Driver      "vesa"' >> ${xfconfig}   add_x11conf '    Driver      "vesa"'
320   fi   fi
321    
322   #vnc server options   if [[ ${USE_AIGLX} = yes ]]
  if [ "${HAS_VNC}" = "yes" ]  
323   then   then
324   echo '' >> ${xfconfig}   add_x11conf ''
325   echo '    # rfb options' >> ${xfconfig}   [[ ${XMODULE} = radeon ]] && add_x11conf '    Option  "XAANoOffscreenPixmaps" "true"'
326   echo '    Option "rfbauth"     "/root/.vnc/passwd"' >> ${xfconfig}           add_x11conf '    Option  "DRI"   "true"'
327   echo '    Option "rfbport"     "5900"' >> ${xfconfig}   add_x11conf ''
328   echo '    #Option "nevershared"' >> ${xfconfig}   fi
329   echo '    Option "alwaysshared"' >> ${xfconfig}  
330   echo '    Option "dontdisconnect"' >> ${xfconfig}   # vnc server options
331   echo '    Option "httpdir"     "/usr/share/vnc/classes"' >> ${xfconfig}   if [[ ${HAS_VNC} = yes ]]
332   echo '    Option "httpport"    "5800"' >> ${xfconfig}   then
333   echo '    # Option "useraccept"' >> ${xfconfig}   add_x11conf ''
334   echo '    Option "usevnc"' >> ${xfconfig}   add_x11conf '    # rfb options'
335   echo '    # Option "localhost"' >> ${xfconfig}   add_x11conf '    Option "rfbauth"     "/root/.vnc/passwd"'
336   echo '    # Option "interface" "192.168.0.1"' >> ${xfconfig}   add_x11conf '    Option "rfbport"     "5900"'
337   echo '    # Option "viewonly"' >> ${xfconfig}   add_x11conf '    # Option "nevershared"'
338   echo '    # Option "loginauth"' >> ${xfconfig}   add_x11conf '    Option "alwaysshared"'
339   echo '' >> ${xfconfig}   add_x11conf '    Option "dontdisconnect"'
340     add_x11conf '    Option "httpdir"     "/usr/share/vnc/classes"'
341     add_x11conf '    Option "httpport"    "5800"'
342     add_x11conf '    # Option "useraccept"'
343     add_x11conf '    Option "usevnc"'
344     add_x11conf '    # Option "localhost"'
345     add_x11conf '    # Option "interface" "192.168.0.1"'
346     add_x11conf '    # Option "viewonly"'
347     add_x11conf '    # Option "loginauth"'
348     add_x11conf ''
349   fi   fi
350    
351   echo 'EndSection' >> ${xfconfig}   add_x11conf 'EndSection'
352   #to be safe   # to be safe
353   unset XSERVER XMODULE XDESC   unset XSERVER XMODULE XDESC
   
   
  #screens  
  echo '' >> ${xfconfig}  
  echo 'Section "Screen"' >> ${xfconfig}  
  echo '    Identifier  "Screen 1"' >> ${xfconfig}  
  echo '    Device      "vga0"' >> ${xfconfig}  
  echo '    Monitor     "mon0"' >> ${xfconfig}  
  echo '    DefaultDepth 16' >> ${xfconfig}  
  echo '    Subsection "Display"' >> ${xfconfig}  
  echo '        Depth       8' >> ${xfconfig}  
  echo '        Modes       "1024x768"' >> ${xfconfig}  
  echo '        ViewPort    0 0' >> ${xfconfig}  
  echo '    EndSubsection' >> ${xfconfig}  
  echo '    Subsection "Display"' >> ${xfconfig}  
  echo '        Depth       16' >> ${xfconfig}  
  echo '        Modes       "1024x768"' >> ${xfconfig}  
  echo '        ViewPort    0 0' >> ${xfconfig}  
  echo '    EndSubsection' >> ${xfconfig}  
  echo '    Subsection "Display"' >> ${xfconfig}  
  echo '        Depth       24' >> ${xfconfig}  
  echo '        Modes       "1024x768"' >> ${xfconfig}  
  echo '        ViewPort    0 0' >> ${xfconfig}  
  echo '    EndSubsection' >> ${xfconfig}  
  echo 'EndSection' >> ${xfconfig}  
   
   
  #server layout  
  echo '' >> ${xfconfig}  
  echo 'Section "ServerLayout"' >> ${xfconfig}  
  echo '    Identifier  "Simple Layout"' >> ${xfconfig}  
  echo '    Screen "Screen 1"' >> ${xfconfig}  
  echo '    InputDevice "Mouse1" "CorePointer"' >> ${xfconfig}  
  echo '    InputDevice "Keyboard1" "CoreKeyboard"' >> ${xfconfig}  
354    
355   #load vnc keyboard && mouse  
356   if [ "${HAS_VNC}" = "yes" ]   # screens
357     add_x11conf ''
358     add_x11conf 'Section "Screen"'
359     add_x11conf '    Identifier  "Screen 1"'
360     add_x11conf '    Device      "vga0"'
361     add_x11conf '    Monitor     "Monitor0"'
362     add_x11conf '    DefaultDepth 16'
363     add_x11conf '    Subsection "Display"'
364     add_x11conf '        Depth       8'
365     add_x11conf '        Modes       "1024x768"'
366     add_x11conf '        ViewPort    0 0'
367     add_x11conf '    EndSubsection'
368     add_x11conf '    Subsection "Display"'
369     add_x11conf '        Depth       16'
370     add_x11conf '        Modes       "1024x768"'
371     add_x11conf '        ViewPort    0 0'
372     add_x11conf '    EndSubsection'
373     add_x11conf '    Subsection "Display"'
374     add_x11conf '        Depth       24'
375     add_x11conf '        Modes       "1024x768"'
376     add_x11conf '        ViewPort    0 0'
377     add_x11conf '    EndSubsection'
378     add_x11conf 'EndSection'
379    
380    
381     # server layout
382     add_x11conf ''
383     add_x11conf 'Section "ServerLayout"'
384     add_x11conf '    Identifier  "Simple Layout"'
385     add_x11conf '    Screen "Screen 1"'
386     add_x11conf '    InputDevice "Mouse1" "CorePointer"'
387     add_x11conf '    InputDevice "Keyboard1" "CoreKeyboard"'
388    
389     # load vnc keyboard && mouse
390     if [[ ${HAS_VNC} = yes ]]
391   then   then
392   echo '    InputDevice "vncMouse"    "ExtraPointer"' >> ${xfconfig}   add_x11conf '    InputDevice "vncMouse"    "ExtraPointer"'
393   echo '    InputDevice "vncKeyboard" "ExtraKeyboard"' >> ${xfconfig}   add_x11conf '    InputDevice "vncKeyboard" "ExtraKeyboard"'
394   fi   fi
395    
396   echo 'EndSection' >> ${xfconfig}   if [[ ${USE_AIGLX} = yes ]]
397     then
398     add_x11conf ''
399     add_x11conf '    Option      "AIGLX" "true"'
400     add_x11conf ''
401     fi
402    
403   #dri (here disabled, use default of xserver)  
404   echo '' >> ${xfconfig}   add_x11conf 'EndSection'
405   echo '# Section "DRI"' >> ${xfconfig}  
406   echo '#    Mode 0666' >> ${xfconfig}  
407   echo '# EndSection' >> ${xfconfig}   # dri (here disabled, use default of xserver)
408     add_x11conf ''
409     if [[ ${USE_AIGLX} = yes ]]
410     then
411     add_x11conf 'Section "DRI"'
412     add_x11conf '     Group 0'
413     add_x11conf '     Mode 0666'
414     add_x11conf 'EndSection'
415     else
416     add_x11conf '# Section "DRI"'
417     add_x11conf '#      Group 0'
418     add_x11conf '#      Mode 0666'
419     add_x11conf '# EndSection'
420     fi
421  }  }
422    
423    
424  run_hwdetection() {  run_hwdetection()
425    {
426   echo -e ${COLOREDSTAR}"Hardware Autodetection started ..."   echo -e ${COLOREDSTAR}"Hardware Autodetection started ..."
427   echo -e ${COLOREDSTAR}"Prozessor: $(cat /proc/cpuinfo |grep "model name" | sed -e 's:model\ name*.*\: ::')"   echo -e ${COLOREDSTAR}"Prozessor: $(cat /proc/cpuinfo |grep "model name" | sed -e 's:model\ name*.*\: ::')"
428    
429    
430   #cleaning up old data-crap   # cleaning up old data-crap
431   if [ -e /etc/sysconfig/hwsetup ]   if [ -e /etc/sysconfig/hwsetup ]
432   then   then
433   echo -e ${COLOREDSTAR}"Cleaning up old data ..."   echo -e ${COLOREDSTAR}"Cleaning up old data ..."
# Line 362  run_hwdetection() { Line 436  run_hwdetection() {
436    
437   echo -en "${COLOREDSTAR}";hwsetup -p > /dev/null   echo -en "${COLOREDSTAR}";hwsetup -p > /dev/null
438    
439   #clean up modules   # clean up modules
440   if [ -f /etc/modules.autoload.d/kernel-$(kernel_major_version) ]   if [ -f /etc/modules.autoload.d/kernel-$(kernel_major_version) ]
441   then   then
442   echo -e ${COLOREDSTAR}"Cleaning up /etc/modules.autoload.d/kernel-$(kernel_major_version) ..."   echo -e ${COLOREDSTAR}"Cleaning up /etc/modules.autoload.d/kernel-$(kernel_major_version) ..."
# Line 370  run_hwdetection() { Line 444  run_hwdetection() {
444   evaluate_retval   evaluate_retval
445   fi   fi
446    
447   #load module for parallel printing if exists   # load module for parallel printing if exists
448   if [ -e /lib/modules/`uname -r`/kernel/drivers/char/lp.o ]   if [ -e /lib/modules/$(uname -r)/kernel/drivers/char/lp.o ]
449   then   then
450   echo "lp" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   add_modconf 'lp'
451   fi   fi
452    
453   #get what hwsetup has found   # get what hwsetup has found
454   if [ -f /etc/sysconfig/hwsetup/knoppix ]   if [ -f /etc/sysconfig/hwsetup/knoppix ]
455   then   then
456   source /etc/sysconfig/hwsetup/knoppix   source /etc/sysconfig/hwsetup/knoppix
457   fi   fi
458    
459   #network setup (dhcp)   # network setup (dhcp)
460   #for i in $(cat /proc/net/dev|grep eth.|cut -d ':' -f1)   if [[ -n ${NETCARD_DRIVER}  ]]
  #do  
  # echo -e ${COLOREDSTAR}"Network ${i}: ${NETCARD_FULLNAME}"  
  if [ -n "${NETCARD_DRIVER}" ]  
461   then   then
462   echo -e ${COLOREDSTAR}"Network eth0: ${NETCARD_FULLNAME}"   echo -e ${COLOREDSTAR}"Network eth0: ${NETCARD_FULLNAME}"
463   echo -e ${COLOREDSTAR}"Network module: ${NETCARD_DRIVER}"   echo -e ${COLOREDSTAR}"Network module: ${NETCARD_DRIVER}"
464   echo "${NETCARD_DRIVER}" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   add_modconf "${NETCARD_DRIVER}"
465   evaluate_retval   evaluate_retval
466   fi   fi
  #done  
467    
468   #sound setup   # sound setup
469   if [ -n "${SOUND_DRIVER}" ]   if [[ -n ${SOUND_DRIVER} ]]
470   then   then
471   echo -e ${COLOREDSTAR}"Sound (${SOUND_FULLNAME}) found"   echo -e ${COLOREDSTAR}"Sound (${SOUND_FULLNAME}) found"
472   echo -e ${COLOREDSTAR}"Sound module: ${SOUND_DRIVER}"   echo -e ${COLOREDSTAR}"Sound module: ${SOUND_DRIVER}"
473   echo "${SOUND_DRIVER}" >> /etc/modules.autoload.d/kernel-$(kernel_major_version)   add_modconf "${SOUND_DRIVER}"
474   evaluate_retval   evaluate_retval
475   fi   fi
476    
477   #write default xfree-config   # write default xfree-config
478   echo -e ${COLOREDSTAR}"Generating x11 configuration ..."   echo -e ${COLOREDSTAR}"Generating x11 configuration ..."
479   write_x11_config   write_x11_config
480   evaluate_retval   evaluate_retval
# Line 417  source $rc_functions Line 487  source $rc_functions
487    
488  case $1 in  case $1 in
489   start)   start)
490   #we wouldn't start hwdetection if settings where imported (alx-only)   # we wouldn't start hwdetection if settings where imported (alx-only)
491   if [ ! -e /etc/alx-config/imported ]   if [ ! -e /etc/alx-config/imported ]
492   then   then
493   run_hwdetection   run_hwdetection
# Line 426  case $1 in Line 496  case $1 in
496   update_svcstatus $1   update_svcstatus $1
497   splash svc_started "$(basename $0)" 0   splash svc_started "$(basename $0)" 0
498   ;;   ;;
499        
500   restart)   restart)
501   $0 start   $0 start
502   ;;   ;;
503      
504   *)   *)
505   echo "Usage: $0 {start|restart}"   echo "Usage: $0 {start|restart}"
506   exit 1   exit 1

Legend:
Removed from v.3  
changed lines
  Added in v.479