rev |
line source |
pankso@4
|
1 #!/bin/sh
|
pankso@4
|
2 #
|
pankso@66
|
3 # Tazx - Ncurses X configuration for SliTaz GNU/Linux using Dialog boxes.
|
pankso@351
|
4 # This tinyutils is part of slitaz-tools. Tazx can configure Xvesa kdrive
|
paul@515
|
5 # and Xorg with several Window Managers.
|
pankso@4
|
6 #
|
pankso@450
|
7 # (c) 2010 SliTaz GNU/Linux - GNU gpl v3.
|
pankso@209
|
8 # Authors: Christophe Lincoln <pankso@slitaz.org>
|
pankso@209
|
9 # Pascal Bellard <pascal.bellard@slitaz.org>
|
pankso@4
|
10 #
|
pascal@190
|
11 : ${DIALOG=tazdialog}
|
pankso@4
|
12
|
pankso@450
|
13 # Default value fo Xvesa.
|
pankso@4
|
14 XSERVER=Xvesa
|
pankso@351
|
15 KEYBD=keyboard
|
pankso@351
|
16 MOUSE=mouse,5,/dev/input/mice
|
pankso@351
|
17 WM=openbox
|
pankso@351
|
18
|
pankso@534
|
19 # Default user for config files in Live mode, id is 1000 since it is
|
pankso@534
|
20 # created by /etc/init.d/bootopts.sh.
|
pankso@534
|
21 USER=`cat /etc/passwd | grep 1000 | cut -d ":" -f 1`
|
pankso@4
|
22
|
pankso@66
|
23 ####################
|
pankso@66
|
24 # Tazx functions #
|
pankso@66
|
25 ####################
|
pankso@66
|
26
|
gokhlayeh@492
|
27 # Populate xorg.conf.d.
|
gokhlayeh@492
|
28 xorg_conf_d()
|
pankso@260
|
29 {
|
gokhlayeh@492
|
30 # Define the xorg.conf.d (can be /etc/X11/xorg.conf.d or /usr/share/X11/xorg.conf.d)
|
gokhlayeh@492
|
31 xorg_config=/etc/X11/xorg.conf.d
|
gokhlayeh@492
|
32
|
gokhlayeh@492
|
33 # Define the xorg.conf.new place.
|
gokhlayeh@492
|
34 xorg_template=/root/xorg.conf.new
|
gokhlayeh@492
|
35
|
gokhlayeh@492
|
36 # Obtain a default configuration file from Xorg.
|
gokhlayeh@492
|
37 Xorg -configure :1
|
gokhlayeh@492
|
38
|
paul@515
|
39 # Backup existing config.
|
gokhlayeh@513
|
40 tar -cf $xorg_config/../Previous_xorg.conf.d.tar $xorg_config/ &> /dev/null
|
gokhlayeh@513
|
41
|
gokhlayeh@492
|
42 # Put the differents sections in separate files in the configuration directory.
|
gokhlayeh@492
|
43 sed -e '/Section "ServerLayout"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template | grep -v Core > $xorg_config/10-ServerLayout.conf
|
gokhlayeh@492
|
44 sed -e '/Section "Files"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template > $xorg_config/20-Files.conf
|
gokhlayeh@492
|
45 sed -e '/Section "Module"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template > $xorg_config/30-Module.conf
|
gokhlayeh@492
|
46 sed -e '/Section "Monitor"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template > $xorg_config/50-Monitor.conf
|
gokhlayeh@492
|
47 sed -e '/Section "Device"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template > $xorg_config/60-Device.conf
|
gokhlayeh@492
|
48 sed -e '/Section "Screen"/,/EndSection/!d' -e "s/EndSection/EndSection\n/" $xorg_template > $xorg_config/70-Screen.conf
|
gokhlayeh@492
|
49
|
gokhlayeh@492
|
50 # Remove the template.
|
gokhlayeh@492
|
51 rm $xorg_template
|
gokhlayeh@492
|
52
|
gokhlayeh@492
|
53 # Configure the keyboard with the right keymap.
|
gokhlayeh@492
|
54 keymap=`cat /etc/keymap.conf`
|
gokhlayeh@492
|
55 keyboard_config=$xorg_config/40-Keyboard.conf
|
gokhlayeh@492
|
56 echo 'Section "InputClass"
|
gokhlayeh@494
|
57 Identifier "Keyboard Defaults"
|
gokhlayeh@494
|
58 MatchIsKeyboard "yes"' > $keyboard_config
|
gokhlayeh@494
|
59 case $keymap in
|
pankso@260
|
60 fr_CH-latin1)
|
pankso@260
|
61 # Swiss FrenCH
|
gokhlayeh@492
|
62 echo ' Option "XkbLayout" "ch"
|
gokhlayeh@494
|
63 Option "XkbVariant" "fr"' >> $keyboard_config
|
gokhlayeh@492
|
64 ;;
|
pankso@260
|
65 en)
|
pankso@260
|
66 # Englisk UK
|
gokhlayeh@492
|
67 echo ' Option "XkbLayout" "en"
|
gokhlayeh@494
|
68 Option "XkbVariant" "en"' >> $keyboard_config
|
gokhlayeh@492
|
69 ;;
|
pankso@260
|
70 ru)
|
pankso@260
|
71 # Russian
|
gokhlayeh@492
|
72 echo ' Option "XkbLayout" "us,ru(winkeys)"
|
gokhlayeh@494
|
73 Option "XkbVariant" "grp:alt_shift_toggle"' >> $keyboard_config
|
gokhlayeh@492
|
74 ;;
|
pankso@303
|
75 slovene)
|
pankso@303
|
76 # Slovenian
|
gokhlayeh@492
|
77 echo ' Option "XkbLayout" "si"
|
gokhlayeh@494
|
78 Option "XkbOptions" "grp:alt_shift_toggle"' >> $keyboard_config
|
gokhlayeh@492
|
79 ;;
|
pankso@260
|
80 *)
|
pankso@260
|
81 # Use clean /etc/keymap.conf value.
|
gokhlayeh@492
|
82 keymap=${keymap%-latin1}
|
gokhlayeh@492
|
83 keymap=${keymap%-lat2}
|
gokhlayeh@492
|
84 keymap=${keymap%-lat6}
|
gokhlayeh@492
|
85 keymap=${keymap%-abnt2}
|
gokhlayeh@492
|
86 echo ' Option "XkbLayout" "'$keymap\" >> $keyboard_config
|
pankso@260
|
87 ;;
|
pankso@260
|
88 esac
|
gokhlayeh@492
|
89
|
gokhlayeh@492
|
90 echo 'Endsection' >> $keyboard_config
|
gokhlayeh@492
|
91
|
gokhlayeh@492
|
92 # Create a xorg.conf if needed.
|
paul@515
|
93 [ ! -f /etc/X11/xorg.conf ] && echo "# You can put here your own Xorg configurations.
|
paul@515
|
94 # This configuration file is read before all files in /etc/X11/xorg.conf.d
|
paul@515
|
95 # This file will not be erased by any updates." > /etc/X11/xorg.conf
|
pankso@260
|
96 }
|
pankso@260
|
97
|
pankso@117
|
98 # Install xorg server
|
pankso@117
|
99 install_xorg()
|
pankso@117
|
100 {
|
pankso@117
|
101 tazpkg recharge
|
pankso@117
|
102 exec 3>&1
|
pankso@117
|
103 value=`$DIALOG --clear --colors --title " Install Xorg " \
|
pankso@117
|
104 --menu \
|
paul@334
|
105 "The 'tazx' application helps you to select your X driver." 16 70 5 \
|
pankso@117
|
106 $(grep xorg-xf86-video /var/lib/tazpkg/packages.list | cut -d- -f4 | while read x; do echo $x; echo driver; done) \
|
pankso@117
|
107 "quit" "Quitter" \
|
pankso@117
|
108 2>&1 1>&3`
|
pankso@117
|
109 retval=$?
|
pankso@117
|
110 exec 3>&-
|
pankso@117
|
111 # Continue, exit...
|
pankso@117
|
112 case $retval in
|
pankso@117
|
113 1)
|
pankso@117
|
114 echo "Cancel pressed..."
|
pankso@117
|
115 exit 0 ;;
|
pankso@117
|
116 255)
|
pankso@117
|
117 if test -z "$value"; then
|
pankso@117
|
118 echo "ESC pressed..."
|
pankso@117
|
119 exit 0
|
pankso@117
|
120 fi ;;
|
pankso@117
|
121 esac
|
pankso@117
|
122 # Set selected value.
|
pankso@117
|
123 case $value in
|
pankso@117
|
124 quit)
|
pankso@117
|
125 echo "Quit..."
|
pankso@117
|
126 exit 0 ;;
|
pankso@117
|
127 *)
|
pankso@117
|
128 tazpkg get-install xorg-server
|
pankso@117
|
129 tazpkg get-install xorg-xf86-video-$value
|
gokhlayeh@492
|
130 xorg_conf_d
|
pankso@117
|
131 sed -i 's|/usr/bin/Xvesa|/usr/bin/Xorg|' /etc/slim.conf
|
pankso@117
|
132 sed -i s/"^xserver_arguments"/'\#xserver_arguments'/ /etc/slim.conf
|
pankso@351
|
133 XSERVER=Xorg ;;
|
pankso@117
|
134 esac
|
pankso@117
|
135 }
|
pankso@117
|
136
|
pankso@66
|
137 # Screen configuration dialog.
|
pankso@66
|
138 screen_config_dialog()
|
pankso@66
|
139 {
|
pankso@66
|
140 exec 3>&1
|
pankso@450
|
141 if [ -x /usr/bin/Xvesa ]; then
|
pankso@450
|
142 value=`$DIALOG \
|
pankso@450
|
143 --clear --colors \
|
pankso@450
|
144 --title " Configure X " \
|
pankso@450
|
145 --menu \
|
pankso@450
|
146 "The 'tazx' application helps you to configure your X session.\n\
|
pankso@450
|
147 Window Manager : \Z2$WM\Zn \n\
|
pankso@450
|
148 X server : \Z2Xvesa\Zn" 16 70 5 \
|
pankso@450
|
149 $(Xvesa -listmodes 2>&1 | grep ^0x | awk '{ printf "%s %s\n",$2,$3 }' | sort -nr | grep x[1-2][4-6]) \
|
pankso@450
|
150 "xterm" "800x600x16" \
|
pankso@450
|
151 "xorg" "Install or reconfigure Xorg" \
|
pankso@450
|
152 "text" "Disable X autostart" \
|
pankso@450
|
153 "quit" "Quit Tazx utility" \
|
pankso@450
|
154 2>&1 1>&3`
|
pankso@450
|
155 else
|
pankso@450
|
156 value=`$DIALOG \
|
pankso@450
|
157 --clear --colors \
|
pankso@450
|
158 --title " Configure X " \
|
pankso@450
|
159 --menu \
|
pankso@450
|
160 "The 'tazx' application helps you to configure your X session.\n\
|
pankso@450
|
161 Window Manager : \Z2$WM\Zn \n\
|
pankso@450
|
162 X server : \Z2Xorg\Zn" 16 70 5 \
|
pankso@450
|
163 "xorg" "Install or reconfigure Xorg" \
|
pankso@450
|
164 "text" "Disable X autostart" \
|
pankso@450
|
165 "quit" "Quit Tazx utility" \
|
pankso@450
|
166 2>&1 1>&3`
|
pankso@450
|
167 fi
|
pankso@66
|
168 retval=$?
|
pankso@66
|
169 exec 3>&-
|
pankso@66
|
170 # Continue, exit or help...
|
pankso@66
|
171 case $retval in
|
pankso@66
|
172 0)
|
pankso@66
|
173 continue ;;
|
pankso@66
|
174 1)
|
pankso@66
|
175 echo "Cancel pressed..."
|
pankso@66
|
176 exit 0 ;;
|
pankso@66
|
177 255)
|
pankso@66
|
178 if test -n "$value"; then
|
pankso@66
|
179 continue
|
pankso@66
|
180 else
|
pankso@66
|
181 echo "ESC pressed..."
|
pankso@66
|
182 exit 0
|
pankso@66
|
183 fi ;;
|
pankso@66
|
184 esac
|
pankso@66
|
185 # Set selected value.
|
pankso@66
|
186 case $value in
|
pankso@117
|
187 xorg)
|
pankso@339
|
188 install_xorg ;;
|
pankso@66
|
189 xterm)
|
paul@515
|
190 # Only with Xvesa.
|
pankso@66
|
191 Xvesa -ac -shadow -screen 800x600x16 -br &
|
pankso@66
|
192 exec xterm -cr orange -geometry 80x35+0-0 ;;
|
pascal@386
|
193 text)
|
pascal@386
|
194 sed -i s/'slim'/''/ /etc/rcS.conf
|
pascal@386
|
195 exit 0 ;;
|
pankso@66
|
196 *)
|
pankso@68
|
197 NEW_SCREEN=$value ;;
|
pankso@66
|
198 esac
|
pankso@66
|
199 }
|
pankso@4
|
200
|
pankso@65
|
201 # Slim config if root.
|
pankso@66
|
202 slim_config()
|
pankso@66
|
203 {
|
pankso@66
|
204 if test $(id -u) = 0; then
|
paul@317
|
205 # /etc/X11/screen.conf exists for Live mode, if this file does not
|
pankso@68
|
206 # exist tazx is executed at boot time.
|
pankso@68
|
207 mkdir -p /etc/X11
|
pankso@68
|
208 echo "SCREEN=$NEW_SCREEN" > /etc/X11/screen.conf
|
pankso@67
|
209 # Get current screen size and sed config file with the new value.
|
pankso@66
|
210 if [ -f /etc/slim.conf ]; then
|
gokhlayeh@513
|
211 XSERV_ARGS=$(grep ^xserver_arguments /etc/slim.conf)
|
gokhlayeh@513
|
212 RES=$( echo $XSERV_ARGS | sed 's/xserver_arguments.*-screen *//' | awk '{print $1 }')
|
gokhlayeh@513
|
213 NEW_XSERV_ARGS=$(echo $XSERV_ARGS | sed s/"-screen $RES"/"-screen $NEW_SCREEN"/)
|
gokhlayeh@513
|
214 # Comment the old one and put the new one in the config file
|
gokhlayeh@513
|
215 sed -i 's/"$XSERV_ARGS"/"# $XSERV_ARGS\n$NEW_XSERV_ARGS"/' /etc/slim.conf
|
gokhlayeh@513
|
216
|
pankso@66
|
217 fi
|
pankso@65
|
218 fi
|
pankso@66
|
219 }
|
pankso@66
|
220
|
pankso@339
|
221 # Window manager specific configuration.
|
pankso@339
|
222 wm_config()
|
pankso@66
|
223 {
|
pankso@339
|
224 case $WM in
|
pankso@339
|
225 ob|openbox)
|
pankso@339
|
226 WM=openbox-session
|
pankso@339
|
227 XSEVER_OPTS="dpms +extension Composite"
|
pankso@339
|
228 # Check if a personal autostart script exists if OB is installed.
|
pankso@339
|
229 if [ -d "/var/lib/tazpkg/installed/openbox" ]; then
|
pankso@339
|
230 if [ ! -f "$HOME/.config/openbox/autostart.sh" ]; then
|
pankso@339
|
231 mkdir -p $HOME/.config/openbox
|
pankso@339
|
232 cp /etc/xdg/openbox/autostart.sh $HOME/.config/openbox
|
pankso@339
|
233 fi
|
pankso@339
|
234 # Script for default user (uid=1000).
|
pankso@339
|
235 if [ ! -f "/home/$USER/.config/openbox/autostart.sh" ]; then
|
pankso@339
|
236 mkdir -p /home/$USER/.config/openbox
|
pankso@339
|
237 cp /etc/xdg/openbox/autostart.sh /home/$USER/.config/openbox
|
pankso@339
|
238 fi
|
pankso@339
|
239 if [ ! -f "/home/$USER/.config/openbox/menu.xml" ]; then
|
pankso@339
|
240 mkdir -p /home/$USER/.config/openbox
|
pankso@339
|
241 cp /etc/xdg/openbox/menu.xml /home/$USER/.config/openbox
|
pankso@339
|
242 fi
|
pankso@339
|
243 chown -R $USER.$USER /home/$USER/.config
|
pankso@339
|
244 fi ;;
|
pankso@339
|
245 jwm)
|
pankso@339
|
246 WM=jwm
|
pankso@339
|
247 XSEVER_OPTS="dpms +extension Composite"
|
pankso@339
|
248 JWM_CONFIG=$HOME/.jwmrc
|
pankso@339
|
249 if [ -d "/var/lib/tazpkg/installed/jwm" ]; then
|
pankso@339
|
250 if [ ! -f "$JWM_CONFIG" ]; then
|
pankso@339
|
251 cp /etc/jwm/system.jwmrc $JWM_CONFIG
|
pankso@339
|
252 fi
|
pankso@339
|
253 # In Live mode default user/root JWM config does not exist and
|
pankso@402
|
254 # $HOME is not set, this is because tazx is executed by boot
|
pankso@339
|
255 # scripts.
|
pankso@339
|
256 if [ ! -f "/home/$USER/.jwmrc" ]; then
|
pankso@339
|
257 cp /etc/jwm/system.jwmrc /home/$USER/.jwmrc
|
pankso@339
|
258 chown $USER.$USER /home/$USER/.jwmrc
|
pankso@339
|
259 fi
|
pankso@339
|
260 if [ ! -f "/root/.jwmrc" -a `id -u` = 0 ]; then
|
pankso@339
|
261 cp /etc/jwm/system.jwmrc /root/.jwmrc
|
pankso@339
|
262 fi
|
pankso@339
|
263 fi ;;
|
pankso@339
|
264 pekwm)
|
pankso@339
|
265 WM=pekwm
|
pankso@339
|
266 XSEVER_OPTS="dpms"
|
pankso@339
|
267 if [ -d "/var/lib/tazpkg/installed/pekwm" ]; then
|
pankso@339
|
268 if [ -d "$HOME/.pekwm" ]; then
|
pankso@339
|
269 cp -R /etc/pekwm $HOME/.pekwm
|
pankso@339
|
270 fi
|
pankso@339
|
271 # In Live mode we want config before starting pekwm the first time.
|
pankso@339
|
272 if [ ! -d "/home/$USER/.pekwm" ]; then
|
pankso@339
|
273 cp -R /etc/pekwm /home/$USER/.pekwm
|
pankso@339
|
274 chown -R $USER.$USER /home/$USER/.pekwm
|
pankso@339
|
275 chmod +x /home/$USER/.pekwm/start
|
pankso@339
|
276 fi
|
pankso@339
|
277 if [ ! -d "/root/.pekwm" -a `id -u` = 0 ]; then
|
pankso@339
|
278 cp -R /etc/pekwm /root/.pekwm
|
pankso@339
|
279 chmod +x /root/.pekwm/start
|
pankso@339
|
280 fi
|
pankso@339
|
281 fi ;;
|
pankso@339
|
282 e17|enlightenment)
|
pankso@339
|
283 WM=enlightenment_start
|
pankso@339
|
284 XSEVER_OPTS="dpms -terminate" ;;
|
pankso@339
|
285 fluxbox)
|
pankso@339
|
286 WM=startfluxbox
|
pankso@339
|
287 XSEVER_OPTS="dpms" ;;
|
pankso@339
|
288 dwm|karmen)
|
pankso@339
|
289 WM=$WM-session
|
pankso@339
|
290 XSEVER_OPTS="dpms" ;;
|
pankso@339
|
291 awesome)
|
pankso@339
|
292 WM=awesome
|
pankso@339
|
293 XSEVER_OPTS="dpms" ;;
|
erjo@396
|
294 xfce|xfce4)
|
erjo@396
|
295 WM=xfce4-session
|
erjo@396
|
296 XSEVER_OPTS="dpms -terminate" ;;
|
pankso@339
|
297 esac
|
pankso@81
|
298 }
|
pankso@81
|
299
|
pankso@68
|
300 # Sample xinitrc for user (WM can be specified with F1 at slim login).
|
pankso@68
|
301 xinitrc_sample()
|
pankso@68
|
302 {
|
pankso@68
|
303 cat > $FILE << "EOF"
|
pankso@68
|
304 # ~/.xinitrc: Executed by slim login manager to startx X session.
|
paul@515
|
305 # You can use F1 with Slim to change your window manager or configure
|
paul@515
|
306 # it permanently with your personal applications.conf file.
|
pankso@68
|
307 #
|
pankso@339
|
308 . $HOME/.config/slitaz/applications.conf
|
pankso@99
|
309
|
pankso@117
|
310 case $1 in
|
pankso@339
|
311 e17|enlightenment*)
|
pankso@315
|
312 exec enlightenment_start ;;
|
pankso@162
|
313 openbox|openbox-session|ob)
|
pankso@315
|
314 exec openbox-session ;;
|
pankso@315
|
315 dwm|dwm-session)
|
pankso@315
|
316 exec dwm-session ;;
|
pankso@339
|
317 fluxbox|startfluxbox)
|
pankso@339
|
318 exec startfluxbox ;;
|
pankso@339
|
319 awesome)
|
pankso@339
|
320 exec awesome ;;
|
pankso@339
|
321 pekwm)
|
pankso@339
|
322 exec pekwm ;;
|
pankso@339
|
323 karmen|karmen-session)
|
pankso@339
|
324 exec karmen-session ;;
|
pankso@117
|
325 jwm)
|
pankso@81
|
326 lxpanel &
|
pankso@315
|
327 exec jwm ;;
|
erjo@396
|
328 xfce|xfce4|xfce4-session)
|
erjo@396
|
329 xfce4-session ;;
|
pankso@117
|
330 *)
|
pankso@339
|
331 exec $WINDOW_MANAGER ;;
|
pankso@68
|
332 esac
|
pankso@68
|
333 EOF
|
pankso@339
|
334 # Set default WM in applications.conf user file. Default WM can be
|
paul@515
|
335 # configured graphically with 'desktopbox tazapps'
|
pankso@339
|
336 . $CONFIG
|
pankso@339
|
337 sed -i s/"WINDOW_MANAGER=.*"/"WINDOW_MANAGER=\"$WM\""/ \
|
pankso@339
|
338 $CONFIG
|
pankso@68
|
339 }
|
pankso@68
|
340
|
pankso@65
|
341 # ~/.xinitrc for slim login.
|
pankso@66
|
342 creat_xinitrc()
|
pankso@66
|
343 {
|
pankso@68
|
344 FILE=$HOME/.xinitrc
|
pankso@339
|
345 CONFIG=$HOME/.config/slitaz/applications.conf
|
pankso@339
|
346 if [ ! -f $CONFIG ]; then
|
pankso@339
|
347 mkdir -p $HOME/.config/slitaz
|
pankso@339
|
348 cp /etc/slitaz/applications.conf $CONFIG
|
pankso@339
|
349 fi
|
pankso@68
|
350 xinitrc_sample
|
pankso@209
|
351 # In Live mode default user needs a xinitrc, since tazx
|
pankso@68
|
352 # is executed only by root.
|
pankso@209
|
353 if [ ! -f /home/$USER/.xinitrc ]; then
|
pankso@209
|
354 FILE=/home/$USER/.xinitrc
|
pankso@339
|
355 CONFIG=/home/$USER/.config/slitaz/applications.conf
|
pankso@339
|
356 if [ ! -f $CONFIG ]; then
|
pankso@339
|
357 mkdir -p /home/$USER/.config/slitaz
|
pankso@339
|
358 cp /etc/slitaz/applications.conf $CONFIG
|
pankso@339
|
359 fi
|
pankso@68
|
360 xinitrc_sample
|
pankso@209
|
361 chown $USER.$USER $FILE
|
pankso@339
|
362 chown -R $USER.$USER /home/$USER/.config/slitaz
|
pankso@105
|
363 fi
|
pankso@66
|
364 }
|
pankso@45
|
365
|
MikeDSmith25@252
|
366 # Create ~/.xsession to keep the configuration selected (used
|
MikeDSmith25@252
|
367 # only by startx, Slim login manager uses .xinitrc).
|
pankso@66
|
368 creat_xsession()
|
pankso@66
|
369 {
|
gokhlayeh@513
|
370 [ -f $HOME/.xsession ] && cp -f $HOME/.xsession $HOME/.previous_xsession
|
pankso@68
|
371 cat > $HOME/.xsession << _EOF_
|
pankso@68
|
372 # ~/.xsession: Start X window session manually on your system (startx).
|
pankso@37
|
373 #
|
pankso@68
|
374 _EOF_
|
pankso@450
|
375 if [ -x /usr/bin/Xorg ]; then
|
pankso@117
|
376 echo 'Xorg &' >> $HOME/.xsession
|
pankso@117
|
377 else
|
pankso@351
|
378 cat >> $HOME/.xsession << _EOT_
|
pankso@450
|
379 Xvesa -ac -shadow $XSEVER_OPTS \\
|
pankso@351
|
380 -screen $NEW_SCREEN \\
|
pankso@351
|
381 -keybd $KEYBD \\
|
pankso@351
|
382 -mouse $MOUSE &
|
pankso@351
|
383 _EOT_
|
pankso@117
|
384 fi
|
pankso@117
|
385 echo '#xterm &' >> $HOME/.xsession
|
pankso@117
|
386 echo '#xpad &' >> $HOME/.xsession
|
pankso@99
|
387 # LXpanel by default with JWM.
|
pankso@117
|
388 if [ "$WM" = "jwm" ]; then
|
pankso@99
|
389 echo 'lxpanel &' >> $HOME/.xsession
|
pankso@99
|
390 fi
|
pankso@104
|
391 echo "exec $WM" >> $HOME/.xsession
|
pankso@66
|
392 chmod 700 $HOME/.xsession
|
pankso@66
|
393 }
|
pankso@4
|
394
|
pankso@66
|
395 ###################
|
pankso@66
|
396 # Tazx sequence #
|
pankso@66
|
397 ###################
|
pankso@66
|
398
|
pankso@351
|
399 case "$1" in
|
pankso@351
|
400 show-config)
|
pankso@351
|
401 . /etc/X11/screen.conf
|
pankso@351
|
402 echo ""
|
pankso@351
|
403 echo "X11 screen resolution: $SCREEN"
|
pankso@351
|
404 echo ""
|
pankso@351
|
405 echo "Slim configuration for X server:"
|
pankso@351
|
406 cat /etc/slim.conf | grep ^default_xserver
|
pankso@351
|
407 cat /etc/slim.conf | grep ^xserver_arguments
|
pankso@351
|
408 echo "" ;;
|
pankso@351
|
409 install-xorg)
|
pankso@351
|
410 # WM can be specified on cmdline.
|
pankso@351
|
411 if [ -n "$2" ]; then
|
pankso@402
|
412 WM=$2
|
pankso@351
|
413 fi
|
pankso@351
|
414 install_xorg
|
pankso@351
|
415 slim_config
|
pankso@351
|
416 wm_config
|
pankso@351
|
417 creat_xinitrc
|
pankso@351
|
418 creat_xsession ;;
|
pankso@415
|
419 config-xorg)
|
pankso@415
|
420 # WM can be specified on cmdline.
|
pankso@415
|
421 if [ -n "$2" ]; then
|
pankso@415
|
422 WM=$2
|
pankso@415
|
423 fi
|
pankso@415
|
424 XSERVER="Xorg"
|
pankso@415
|
425 wm_config
|
pankso@415
|
426 creat_xinitrc
|
pankso@415
|
427 creat_xsession
|
gokhlayeh@492
|
428 xorg_conf_d ;;
|
pankso@351
|
429 *)
|
pankso@351
|
430 # WM can be specified on cmdline.
|
pankso@351
|
431 if [ -n "$1" ]; then
|
pankso@402
|
432 WM=$1
|
pankso@351
|
433 fi
|
pankso@351
|
434 [ -n "$NEW_SCREEN" ] || screen_config_dialog
|
pankso@351
|
435 slim_config
|
pankso@351
|
436 wm_config
|
pankso@351
|
437 creat_xinitrc
|
pankso@351
|
438 creat_xsession ;;
|
pankso@351
|
439 esac
|
pankso@4
|
440
|
pankso@4
|
441 exit 0
|