Magellan Linux

Diff of /alx-src/trunk/tinyalxconfig-ng/functions/config_modules.sh

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

revision 458 by niro, Wed Jun 4 23:39:01 2008 UTC revision 459 by niro, Thu Jun 5 19:40:18 2008 UTC
# Line 1  Line 1 
1  # $Header: /home/cvsd/alx-cvs/alx-src/tinyalxconfig-ng/functions/config_modules.sh,v 1.3 2008-06-04 23:39:01 niro Exp $  # $Header: /home/cvsd/alx-cvs/alx-src/tinyalxconfig-ng/functions/config_modules.sh,v 1.4 2008-06-05 19:40:18 niro Exp $
2  # configures printing on the host via mysql db settings  # configures printing on the host via mysql db settings
3  # Note must be the first configure script which will be startet  # Note must be the first configure script which will be startet
4    
 get_modules_settings()  
 {  
  local i count mod_ids settings  
   
  # first get all module names  
  mod_ids=$(mysqldo "select id from cfg_modules where serial='${ALX_SERIAL}'")  
   
  # set counter equal to numbers of printers  
  declare -i count=0  
  for i in ${mod_ids}  
  do  
  # now get the other settings und put them in arrays  
  ALX_MODULES[${count}]=$(mysqldo "select module from cfg_modules where id=${i};")  
  (( count++ ))  
  done  
   
  # get network module  
  ALX_NETWORK_MODULE=$(mysqldo "select module from cfg_network where serial=${ALX_SERIAL};")  
   
  ## fixes needed to satisfy some deps  
  ALX_GFX_MODULE=$(mysqldo "select module from cfg_graphic where serial=${ALX_SERIAL};")  
   
  # export all settings  
  export ALX_COUNT=${count}  
  export ALX_NETWORK_MODULE  
  export ALX_GFX_MODULE  
  export ALX_MODULES  
 }  
   
5  add_modules()  add_modules()
6  {  {
7   local modules="$@"   local modules="$@"
# Line 46  add_modules() Line 17  add_modules()
17    
18  config_modules()  config_modules()
19  {  {
  local i  
20   local modfile   local modfile
21     local modules_list
  # first of all get the vars  
  get_modules_settings  
22    
23   # location of the modules.autoload file   # location of the modules.autoload file
24   modfile="/etc/modules.autoload"   modfile="/etc/modules.autoload"
# Line 61  config_modules() Line 29  config_modules()
29   # needed for printing:   # needed for printing:
30   add_modules lp parport parport_pc   add_modules lp parport parport_pc
31    
32   if [[ -n ${ALX_NETWORK_MODULE} ]] && [[ ${ALX_NETWORK_MODULE} != auto ]]   # get all available modules-ids
33   then   modules_list=$(mysqldo "select module from cfg_modules where serial='${ALX_SERIAL}'")
34   add_modules "${ALX_NETWORK_MODULE}"   [[ ! -z ${modules_list} ]] && add_modules ${modules_list}
35   fi  
36     # network modules - but exclude "auto" modules
37   # intel i810 needs intel-agp module to work probably   modules_list=$(mysqldo "select module from cfg_interfaces where serial='${ALX_SERIAL}' and not module='auto'")
38   [[ ${ALX_GFX_MODULE} = i810 ]] && add_modules intel-agp   [[ ! -z ${modules_list} ]] && add_modules ${modules_list}
39    
40   for ((i=0; i <= ALX_COUNT; i++))   # fixme: does udev handle this already?? i think so!
41   do   # special agp and drm modules needed by some graphic drivers
42   [[ -n ${ALX_MODULES[${i}]} ]] && \   evaluate_table cfg_graphic
43   add_modules "${ALX_MODULES[${i}]}"   case ${cfg_grafic_module} in
44   done   # intel i810 needs intel-agp module to work probably
45     i810) add_modules intel-agp ;;
46   unset ALX_COUNT   esac
  unset ALX_MODULES  
  unset ALX_NETWORK_MODULE  
  unset ALX_GFX_MODULE  
47  }  }

Legend:
Removed from v.458  
changed lines
  Added in v.459