Magellan Linux

Annotation of /alx-src/trunk/tinyalxconfig-ng/init.d/alxsettings

Parent Directory Parent Directory | Revision Log Revision Log


Revision 488 - (hide annotations) (download)
Sat Jun 7 18:25:00 2008 UTC (15 years, 11 months ago) by niro
File size: 17694 byte(s)
-removed deprecated checks

1 niro 386 #!/bin/bash
2    
3     # <niro@magellan-linux.de>
4    
5 niro 396 #%rlevels: 7:s 0:k
6 niro 386 #%start: 41
7     #%stop: 01
8    
9     #deps
10     #%needs:
11     #%before:
12     #%after:
13    
14 niro 488 # $Header: /home/cvsd/alx-cvs/alx-src/tinyalxconfig-ng/init.d/alxsettings,v 1.13 2008-06-07 18:25:00 niro Exp $
15 niro 386
16     # checks first if the client was already configured and if it has an valid serial
17     # if not it runs the autoconfiguration script
18     # these settings will be used for client setup
19     #
20     # if client was valid it first will check if his settings against the server
21     # if no changes are at server side they will be kept, if yes the get updated.
22     # the server settings has higher priority.
23    
24     source /etc/sysconfig/rc
25     source $rc_functions
26    
27     # mysql settings
28     source /etc/alxconfig-ng/config.rc
29    
30     # helper functions
31     source /usr/lib/alxconfig-ng/functions/mysqlfunctions
32     source /usr/lib/alxconfig-ng/functions/serial_functions
33     source /usr/lib/alxconfig-ng/functions/config_modules
34     source /usr/lib/alxconfig-ng/functions/config_network
35     source /usr/lib/alxconfig-ng/functions/config_printers
36     source /usr/lib/alxconfig-ng/functions/config_sessions
37     source /usr/lib/alxconfig-ng/functions/config_x11
38     source /usr/lib/alxconfig-ng/functions/config_auth
39     source /usr/lib/alxconfig-ng/functions/config_ssh_auth
40    
41     # other needed vars
42     ALX_HW_DETECT=false
43     ALX_FORCED_RECHECK=false
44     ALX_RESET_SETTINGS=false
45    
46     # unset vars which may kill us
47     unset ALX_SERIAL ALX_STATE
48    
49    
50     # setup needed directories
51     [ ! -d /etc/alxconfig-ng/state ] && install -d /etc/alxconfig-ng/state
52    
53    
54     # read_cmdline ${item}
55     read_cmdline()
56     {
57     local i
58    
59     for i in $(< /proc/cmdline)
60     do
61     [[ ${i} = $1 ]] && return 0
62     done
63    
64     return 1
65     }
66    
67     update_system_settings()
68     {
69     echo -e ${COLMAGENTA}"Checking system setup ..."${COLDEFAULT}
70    
71     # get the modules settings
72     # ! is the first thing that must be configured !
73     config_modules
74    
75     # imports network settings from db
76     config_networking
77    
78     # imports x11 settings from db
79     config_x11
80    
81     # imports session settings from db
82     config_sessions
83    
84     # imports printer settings from db
85     config_printing
86    
87     # imports auth settings from db
88     config_auth
89    
90     # exchange ssh rsa keys
91     HOME=/root config_ssh_auth
92     }
93    
94     get_system_serial()
95     {
96     local CUR_IP CUR_MAC CUR_MTIME ALX_IFACE
97    
98     # check if serial file exists
99     if [ -f /etc/alxconfig-ng/serial ] && [[ ${ALX_FORCED_RECHECK} = false ]]
100     then
101     source /etc/alxconfig-ng/serial
102    
103     # start preliminary networking (dhcp)
104     preliminary_network start
105    
106     # check if mysql server is reachable
107     # if not abort this script
108     if ! reach_mysql_server
109     then
110     preliminary_network stop
111     exit 1
112     fi
113    
114     CUR_IP=$(/sbin/ifconfig ${ALX_IFACE} | sed -n '/addr:/s/ [^r]*..//gp')
115     CUR_MAC=$(/sbin/ifconfig ${ALX_IFACE} | grep HWaddr | cut -d ' ' -f11)
116     CUR_MTIME=$(date +%s)
117    
118     echo -e ${COLOREDSTAR} "Trying to validate my serial ..."
119    
120     # nice serial output
121     $CURS_UP
122     $SET_WCOL
123     echo "[ SN: ${ALX_SERIAL} ]"
124    
125     if validate_serial "${ALX_SERIAL}" "${ALX_REG_DATE}" "${CUR_MAC}"
126     then
127     ALX_STATE="ok"
128     else
129     # abort on non valid serial
130     ALX_STATE="invalid serial"
131     echo "ALX_STATE=${ALX_STATE}" > /etc/alxconfig-ng/state/state
132     show_invalid_serial_msg
133     exit 1
134     fi
135    
136     else
137     # run hardware detection
138     echo
139     if [[ ${ALX_FORCED_RECHECK} = true ]]
140     then
141     echo -e ${COLMAGENTA}"Hardware autodetection forced by system-administrator"${COLDEFAULT}
142     else
143     echo -e ${COLMAGENTA}"Preparing system for first boot"${COLDEFAULT}
144     fi
145 niro 391 # cleaning up old data-crap
146     if [ -d /etc/sysconfig/hwsetup ]
147     then
148     echo -e ${COLOREDSTAR}"Cleaning up old data ..."
149     rm -f /etc/sysconfig/hwsetup/*
150     fi
151 niro 397 ALX_HW_DETECT=true
152 niro 391 echo -en "${COLOREDSTAR}";hwsetup -p > /dev/null
153 niro 386
154     # set hostname to alx_default_hostname
155     # use old hostname if this is a forced re-check
156     [[ ${ALX_FORCED_RECHECK} = true ]] && ALX_DEFAULT_HOSTNAME="$(< /etc/hostname)"
157     [ -z "${ALX_DEFAULT_HOSTNAME}" ] && ALX_DEFAULT_HOSTNAME=magellan-alx
158     HOSTNAME="${ALX_DEFAULT_HOSTNAME}"
159    
160     # update the hostname on the system for sure
161     echo "${HOSTNAME}" > /etc/hostname
162    
163     # start preliminary networking (dhcp)
164     preliminary_network start
165    
166     # check if mysql server is reachable
167     # if not abort this script
168     if ! reach_mysql_server
169     then
170     preliminary_network stop
171     exit 1
172     fi
173    
174     CUR_IP=$(/sbin/ifconfig eth0 | sed -n '/addr:/s/ [^r]*..//gp')
175     CUR_MAC=$(/sbin/ifconfig eth0 | grep HWaddr | cut -d ' ' -f11)
176     CUR_MTIME=$(date +%s)
177    
178     # abort now if this is a forced re-check
179     if [[ ${ALX_FORCED_RECHECK} = true ]]
180     then
181     # but first check the serial
182     source /etc/alxconfig-ng/serial
183    
184     echo -e ${COLOREDSTAR} "Trying to validate my serial ..."
185    
186     # nice serial output
187     $CURS_UP
188     $SET_WCOL
189     echo "[ SN: ${ALX_SERIAL} ]"
190    
191     if validate_serial "${ALX_SERIAL}" "${ALX_REG_DATE}" "${CUR_MAC}"
192     then
193     ALX_STATE="ok"
194     else
195     # abort on non valid serial
196     ALX_STATE="invalid serial"
197     echo "ALX_STATE=${ALX_STATE}" > /etc/alxconfig-ng/state/state
198     show_invalid_serial_msg
199     exit 1
200     fi
201    
202     # write current state to temp file
203     echo "ALX_STATE=${ALX_STATE}" > /etc/alxconfig-ng/state/state
204     [ -f /hardware-auto-detection ] && rm /hardware-auto-detection
205    
206     # now export ALX_FORCED_RECHECK=true
207     # that the setting will be updated not inserted !
208     export ALX_FORCED_RECHECK=true
209     return 0
210     fi
211    
212     echo -e ${COLOREDSTAR} "Trying to get new serial ..."
213    
214     # request a new serial; one command now (cause must be done in the same session)
215     ALX_SERIAL=$(mysqldo "insert into client_serials (mtime, mac) values('${CUR_MTIME}','${CUR_MAC}');
216     select last_insert_id();")
217    
218     if [[ ${ALX_SERIAL} != NULL ]]
219     then
220     # nice serial output
221     $CURS_UP
222     $SET_WCOL
223     echo "[ SN: ${ALX_SERIAL} ]"
224    
225     # set ALX_STATE to ok so everybody knows that everything was ok
226     ALX_STATE=ok
227    
228     echo "ALX_SERIAL=${ALX_SERIAL}" > /etc/alxconfig-ng/serial
229     echo "ALX_REG_DATE=${CUR_MTIME}" >> /etc/alxconfig-ng/serial
230    
231     evaluate_retval
232     else
233     # print false (works only if this is the first statement here)
234     evaluate_retval
235    
236     # set ALX_STATE to error so everybody sees there was an error
237     ALX_STATE=error
238    
239     # show an error that no new serial was found
240     # nice serial output
241     $CURS_UP
242     $SET_WCOL
243     echo -e "[ SN: ${COLRED}None, 0${COLDEFAULT} ]"
244     fi
245     fi
246    
247     # write current state to temp file
248     echo "ALX_STATE=${ALX_STATE}" > /etc/alxconfig-ng/state/state
249     echo "ALX_IFACE=${ALX_IFACE}" >> /etc/alxconfig-ng/state/state
250     }
251    
252    
253     check_is_configured()
254     {
255     if [ -f /etc/alxconfig-ng/state/configured ]
256     then
257     export ALX_CONFIGURED=true
258     else
259     export ALX_CONFIGURED=false
260     fi
261     }
262    
263    
264     # imports current settings to the database resolved by the hardware detection
265     import_settings_to_db()
266     {
267     # note: networking is always 'dhcp' if hw was autodetected
268     # note: default_domain/hostname is set in config.rc
269    
270     # to be safe, we do some sanity checks
271     [ -z "${ALX_DEFAULT_DOMAIN}" ] && ALX_DEFAULT_DOMAIN=localdomain
272     [ -z "${ALX_DEFAULT_HOSTNAME}" ] && ALX_DEFAULT_HOSTNAME=magellan-alx
273    
274     # vars used by hwdetect
275     local NETCARD_FULLNAME NETCARD_DRIVER MOUSE_FULLNAME MOUSE_DEVICE SOUND_FULLNAME
276     local SOUND_DRIVER XSERVER XMODULE XDESC FLOPPY_FULLNAME FLOPPY_DEVICE FLOPPY_DRIVER
277     local MOUSETYPE XMOUSETYPE FULLNAME DEVICE
278    
279     # get setting from hwdetect
280     source /etc/sysconfig/hwsetup/knoppix
281     source /etc/sysconfig/hwsetup/mouse
282    
283     echo
284     echo -e ${COLMAGENTA}"Importing detected settings to database"${COLDEFAULT}
285    
286     # network
287     echo -e " Network settings ..."
288 niro 444 # global settings
289     mysqldo "insert into cfg_network(serial, hostname, domain )
290     values('${ALX_SERIAL}', '${ALX_DEFAULT_HOSTNAME}','${ALX_DEFAULT_DOMAIN}');"
291 niro 386
292 niro 444 # let udev decide which module should be loaded
293     # get all devices from sysfs
294     local i
295     local iface
296     for i in /sys/class/net/eth?
297     do
298     iface=$(basename ${i})
299     NETCARD_DRIVER=$(source /sys/class/net/${iface}/uevent; echo ${PHYSDEVDRIVER})
300     mysqldo "insert into cfg_interfaces(
301     serial,
302     iface,
303     module,
304     networking
305 niro 386 )
306     values(
307     '${ALX_SERIAL}',
308 niro 444 '${iface}',
309 niro 386 '${NETCARD_DRIVER}',
310     'dhcp'
311     );"
312 niro 444 done
313 niro 386 evaluate_retval
314    
315     # xserver
316     echo -e " Graphic settings ..."
317     # xserver general
318     ( mysqldo "insert into cfg_graphic(
319     serial,
320     module,
321     resolution,
322     depth,
323     monitorid
324     )
325     values(
326     '${ALX_SERIAL}',
327     '${XMODULE}',
328     '1024x768',
329     '16',
330     '0'
331     );"; )
332     evaluate_retval
333    
334     # input
335     echo -e " Input settings ..."
336 niro 444 mysqldo "insert into cfg_input(serial,mouse,keyboard) values('${ALX_SERIAL}','${XMOUSETYPE}','kbd');"
337 niro 386 evaluate_retval
338    
339     # auth
340     echo -e " Authentification settings ..."
341     mysqldo "insert into client_auth(
342     serial,
343     username,
344     shell,
345     vnc,
346     samba,
347     station
348     )
349     values(
350     '${ALX_SERIAL}',
351     '${ALX_UNPRIV_USER}',
352     '',
353     '',
354     '',
355     ''
356     );"
357     evaluate_retval
358    
359     # exchange ssh rsa keys - the first boot needs this !
360     # or no reboot will work via the webadmin
361     echo -e " SSH authentification settings ..."
362     HOME=/root config_ssh_auth
363     evaluate_retval
364    
365     # autostart
366     echo -e " Autostart settings ..."
367     mysqldo "insert into cfg_autostart(serial,session) values('${ALX_SERIAL}','');"
368    
369     # screensaver
370     echo -e " Screensaver settings ..."
371     mysqldo "insert into cfg_screensaver(serial,screensaver) values('${ALX_SERIAL}','')"
372    
373     evaluate_retval
374     }
375    
376     # imports current settings to the database resolved by the hardware detection
377     update_settings_in_db()
378     {
379     # note: networking is always 'dhcp' if hw was autodetected
380     # note: default_domain/hostname is set in config.rc or exported
381     # note: we updating only hardware settings here !
382    
383     # to be safe, we do some sanity checks
384     [ -z "${ALX_DEFAULT_DOMAIN}" ] && ALX_DEFAULT_DOMAIN=localdomain
385     [ -z "${ALX_DEFAULT_HOSTNAME}" ] && ALX_DEFAULT_HOSTNAME=magellan-alx
386    
387     # vars used by hwdetect
388     local NETCARD_FULLNAME NETCARD_DRIVER MOUSE_FULLNAME MOUSE_DEVICE SOUND_FULLNAME
389     local SOUND_DRIVER XSERVER XMODULE XDESC FLOPPY_FULLNAME FLOPPY_DEVICE FLOPPY_DRIVER
390     local MOUSETYPE XMOUSETYPE FULLNAME DEVICE
391    
392     # get setting from hwdetect
393     source /etc/sysconfig/hwsetup/knoppix
394     source /etc/sysconfig/hwsetup/mouse
395    
396     echo
397     echo -e ${COLMAGENTA}"Updating detected settings in database"${COLDEFAULT}
398    
399     # network
400     echo -e " Network settings ..."
401 niro 444 mysqldo "update cfg_network set
402     hostname='${ALX_DEFAULT_HOSTNAME}',
403     domain='${ALX_DEFAULT_DOMAIN}';
404     where serial=${ALX_SERIAL};"
405 niro 386
406 niro 444 # let udev decide which module should be loaded
407     # get all devices from sysfs
408     local i
409     local iface
410     for i in /sys/class/net/eth?
411     do
412     iface=$(basename ${i})
413     NETCARD_DRIVER=$(source /sys/class/net/${iface}/uevent; echo ${PHYSDEVDRIVER})
414     mysqldo "update cfg_interfaces set
415     iface='${iface}',
416     module='${NETCARD_DRIVER}',
417     networking='${NETWORKING}',
418     where serial=${ALX_SERIAL};"
419 niro 386
420     # only insert the *FIRST* iface
421     break
422     done
423     evaluate_retval
424    
425     # xserver
426     echo -e " Graphic settings ..."
427     # xserver general
428     mysqldo "update cfg_graphic set
429     module='${XMODULE}',
430     resolution='1024x768',
431     depth='16',
432     monitorid='0'
433     where serial=${ALX_SERIAL};"
434     evaluate_retval
435    
436     # input
437     echo -e " Input settings ..."
438 niro 444 mysqldo "update cfg_input set mouse='${XMOUSETYPE}', keyboard='kbd' where serial=${ALX_SERIAL};"
439 niro 386 evaluate_retval
440     }
441    
442     # imports current settings to the local system resolved by the hardware detection
443     # we only need the network settings
444     import_settings_local()
445     {
446     # note: networking is always 'dhcp' if hw was autodetected
447     # note: default_domain/hostname is set in config.rc
448    
449     # to be safe, we do some sanity checks
450     [ -z "${ALX_DEFAULT_DOMAIN}" ] && ALX_DEFAULT_DOMAIN=localdomain
451     [ -z "${ALX_DEFAULT_HOSTNAME}" ] && ALX_DEFAULT_HOSTNAME=magellan-alx
452    
453     # vars used by hwdetect
454     local NETCARD_FULLNAME NETCARD_DRIVER MOUSE_FULLNAME MOUSE_DEVICE SOUND_FULLNAME
455     local SOUND_DRIVER XSERVER XMODULE XDESC FLOPPY_FULLNAME FLOPPY_DEVICE FLOPPY_DRIVER
456     local MOUSETYPE XMOUSETYPE FULLNAME DEVICE
457    
458     # get setting from hwdetect
459     source /etc/sysconfig/hwsetup/knoppix
460    
461     echo
462     echo -e ${COLMAGENTA}"Importing detected settings to local system"${COLDEFAULT}
463    
464     # set system state to 'already configured'
465     touch /etc/alxconfig-ng/state/configured
466    
467     # if only an recheck was forced than abort now
468     [[ ${ALX_FORCED_RECHECK} = true ]] && return 0
469    
470     # create a fresh fluxbox directory
471     [ -d ${ALX_UNPRIV_HOME}/.fluxbox ] && rm -rf ${ALX_UNPRIV_HOME}/.fluxbox
472     install -d ${ALX_UNPRIV_HOME}/.fluxbox
473    
474     # now generate fluxbox config files
475    
476     # fluxbox main config
477     cat ${ALX_SKELETONS}/fluxbox/init \
478     > ${ALX_UNPRIV_HOME}/.fluxbox/init
479    
480     # fluxbox autostart
481     cat ${ALX_SKELETONS}/fluxbox/apps \
482     > ${ALX_UNPRIV_HOME}/.fluxbox/apps
483    
484     # fluxbox menu header
485     cat ${ALX_SKELETONS}/fluxbox/menu.header \
486     > ${ALX_UNPRIV_HOME}/.fluxbox/menu
487    
488     # now fix it with proper messages :P
489     local ver="$(< /etc/mageversion)"
490     sed -i "s:@CHANGEME@:alx-${ver} #${ALX_SERIAL}:g" \
491     ${ALX_UNPRIV_HOME}/.fluxbox/menu
492    
493     # add a newline (maybe there is no crlf in the header)
494     echo >> ${ALX_UNPRIV_HOME}/.fluxbox/menu
495    
496     # fluxbox menu footer
497     cat ${ALX_SKELETONS}/fluxbox/menu.footer \
498     >> ${ALX_UNPRIV_HOME}/.fluxbox/menu
499    
500     # add a newline (maybe there is no crlf in the footer)
501     echo >> ${ALX_UNPRIV_HOME}/.fluxbox/menu
502    
503     # setup some standart icons (sysinfo.lnk)
504     # basic config
505     cat ${ALX_SKELETONS}/xtdesktop/xtdeskrc > ${ALX_UNPRIV_HOME}/.xtdeskrc
506    
507     # clean desktop icon location
508     [ -d ${ALX_UNPRIV_HOME}/.xtdesktop ] && rm -rf ${ALX_UNPRIV_HOME}/.xtdesktop
509     install -d ${ALX_UNPRIV_HOME}/.xtdesktop
510    
511     # last but not least gen a icon with some sys informations
512     local sysinfo
513     local osversion
514     local xres
515     local yres
516    
517     osversion="$(< /etc/mageversion)"
518     sysinfo="Hostname: ${ALX_DEFAULT_HOSTNAME} Serial: #${ALX_SERIAL} OS: alx-${osversion} Kernel: $(uname -r)"
519    
520     # at first boot we got always a resolution of 1024x768-16@60
521     # middle of the screen
522     # (no txt - length required, xtdesk manage that itself)
523     xres="$((1024 / 2))"
524     # default y pos (full yres -22 !)
525     yres="$((768 - 22 ))"
526    
527     generate_icon \
528     --name "${sysinfo}" \
529     --command "exit 0" \
530     --icon "${ALX_SESSIONS_ICONS}/sysinfo.png" \
531     --dest "${ALX_UNPRIV_HOME}/.xtdesktop/sysinfo.lnk" \
532     --xres "${xres}" \
533     --yres "${yres}" \
534     --icon-width "1" \
535     --icon-height "1"
536    
537     # create a xinitrc
538     echo "exec startfluxbox" > ${ALX_UNPRIV_HOME}/.xinitrc
539    
540     # set correct permissions
541     chown ${ALX_UNPRIV_USER}:${ALX_UNPRIV_GROUP} ${ALX_UNPRIV_HOME}
542     chown ${ALX_UNPRIV_USER}:${ALX_UNPRIV_GROUP} ${ALX_UNPRIV_HOME}/.fluxbox
543     chmod 0755 ${ALX_UNPRIV_HOME}/.fluxbox
544     chmod 0755 ${ALX_UNPRIV_HOME}/.xtdesktop
545     chmod 0644 ${ALX_UNPRIV_HOME}/.xtdeskrc
546     chmod 0644 ${ALX_UNPRIV_HOME}/.xinitrc
547     }
548    
549     # start|stop
550     preliminary_network()
551     {
552     case $1 in
553     start)
554     # keeping like always safe:
555 niro 388 # no network should be started here
556     ${rc_base}/init.d/network stop
557 niro 386
558     echo -e ${COLMAGENTA}"Starting preliminary networking ... "${COLDEFAULT}
559     # start network configured from /etc/conf.d
560 niro 388 ${rc_base}/init.d/network start
561 niro 386 ;;
562    
563     stop)
564     echo -e ${COLMAGENTA}"Stopping preliminary networking ... "${COLDEFAULT}
565 niro 388 ${rc_base}/init.d/network stop
566 niro 386 ;;
567    
568     *)
569     echo "Usage: preliminary_network {start|stop}"
570     ;;
571     esac
572     }
573    
574     reset_system_settings()
575     {
576     # force load of de kbdkeys
577     loadkeys -q de
578     echo
579     echo -en ${COLRED}
580     echo -n "*** Warning: you are about to reset *all* local settings on this system!"
581     echo -e ${COLDEFAULT}
582     echo "*** Do you really want to continue ?"
583     echo -n "*** Enter 'yes' to continue, anything else to abort: "
584     read kbinsert
585     if [[ ${kbinsert} = yes ]]
586     then
587     echo -en ${COLRED}
588     echo -n "*** OK, you really want it ... killing all settings: "
589     for i in 3 2 1 now
590     do
591     echo -n " ${i}"
592     sleep 1
593     done
594     echo -e ${COLDEFAULT}
595    
596     ## reset all settings:
597     rm -rf ${SETTINGSPATH}/*
598     rm -f /etc/alxconfig-ng/serial
599     rm -rf /etc/alxconfig-ng/state
600    
601     # clear all printers & net-shares
602     :> /etc/cups/printers.conf
603     :> /etc/samba/smb.conf
604    
605     # remove inetd, cups & smb from init
606     rc-config del inetd &> /dev/null
607     rc-config del cups &> /dev/null
608     rc-config del samba &> /dev/null
609    
610     # remove all user settings
611     [ -d ${ALX_UNPRIV_HOME} ] && rm -rf ${ALX_UNPRIV_HOME}
612    
613     # remove all ica-sessions
614     find ${ALX_ICA_SESSIONS} -type f -name '*.ica' | xargs rm
615    
616     # remove all old nics and modules configs
617     find /etc/conf.d -type f -name 'net.*' | xargs rm
618     find /etc/modules.d -type f -name 'net.*' | xargs rm
619    
620     # restore default networking
621     cat ${ALX_SKELETONS}/net/net.eth0 > /etc/conf.d/net.eth0
622    
623     echo "I am done now, press [Enter] to reboot system ..."
624     else
625     echo "Aborted, press [Enter] to reboot system ..."
626     fi
627     read
628     reboot
629     }
630    
631     case $1 in
632     start)
633     # check for global overrides
634     [ -f /hardware-auto-detection ] && ALX_FORCED_RECHECK=true
635     read_cmdline hardware-auto-detection && ALX_FORCED_RECHECK=true
636     read_cmdline alx-reset-settings && ALX_RESET_SETTINGS=true
637    
638     # kill all settings if requested
639     if [[ ${ALX_RESET_SETTINGS} = true ]]
640     then
641     reset_system_settings
642     fi
643    
644     # retrieve or validate current serial
645     get_system_serial
646     if [[ ${ALX_HW_DETECT} = true ]]
647     then
648     if [[ ${ALX_FORCED_RECHECK} = true ]]
649     then
650     update_settings_in_db
651     else
652     import_settings_to_db
653     fi
654     import_settings_local
655    
656     # here we should also exchange the ssh keys
657     # or the system cannot be rebooted after
658     # the first start via the alx-webadmin
659     config_ssh_auth
660     fi
661    
662     # now setup system configuration
663     # alx_setup_or_whatever_it_will_be_called()
664     [[ ${ALX_HW_DETECT} = false ]] && update_system_settings
665    
666     # stop at last the preliminary networking (dhcp)
667     preliminary_network stop
668     ;;
669    
670     stop)
671     # unset_alx_connected #--> now in alxsetstate-rc6
672     # ! important !: del systemstate
673     [ -f /etc/alxconfig-ng/state/state ] && rm /etc/alxconfig-ng/state/state
674     ;;
675     *)
676     echo "Usage: $0 {start|stop} ..."
677     ;;
678     esac
679    

Properties

Name Value
svn:executable *