Magellan Linux

Diff of /trunk/installer/hwdetection.sh

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

revision 574 by niro, Wed Sep 12 18:44:05 2007 UTC revision 767 by niro, Mon Sep 22 22:06:46 2008 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    # $Header: /home/cvsd/magellan-cvs/magellan-src/installer/hwdetection.sh,v 1.8 2008-09-22 22:06:46 niro Exp $
3    
4  ## hwdetection, needs >= sys-apps/hwinfo  ## hwdetection, needs >= sys-apps/hwinfo
5    
6    # hwinfo wrapper to use hwinfo with sudo if requested
7    hwinfo()
8    {
9     local use_sudo=""
10     case ${SUDO} in
11     yes|y|true|1) use_sudo=sudo ;;
12     esac
13    
14     ${use_sudo} /usr/sbin/hwinfo $@
15    }
16    
17  # get_hwinfo $hw_item  # get_hwinfo $hw_item
18  get_hwinfo()  get_hwinfo()
19  {  {
20     local enable_desc="0"
21    
22     if [[ $1 = --with-description ]] || [[ $1 = -d ]]
23     then
24     enable_desc=1
25     shift
26     fi
27    
28   local item="$1"   local item="$1"
29   local all   local all
30   local i   local i
31    
32     # handle special items
33     case ${item} in
34     memory) get_hwinfo_memory; return ;;
35     smp) get_hwinfo_smp; return ;;
36     esac
37    
38   all=$(hwinfo --short --"${item}")   all=$(hwinfo --short --"${item}")
39    
40   declare -i i=0   declare -i i=0
# Line 17  get_hwinfo() Line 44  get_hwinfo()
44   (( i++ ))   (( i++ ))
45   [ ${i} -eq 1 ] && continue   [ ${i} -eq 1 ] && continue
46    
47   echo "${device};${description}"   if [[ ${enable_desc} = 1 ]]
48     then
49     echo "${device};${description}"
50     else
51     echo "${device}"
52     fi
53   done <<< "${all}"   done <<< "${all}"
54  }  }
55    
56    
57    # special memory case
58    get_hwinfo_memory()
59    {
60     local memory=$(hwinfo --memory  | grep "Memory Size" | cut -d: -f2 | sed "s:\ ::")
61     echo "${memory}"
62    }
63    
64    
65    # special smp case
66    get_hwinfo_smp()
67    {
68     local smp=$(hwinfo --smp  | grep "SMP support:" | cut -d: -f2 | sed "s:\ ::")
69     echo "${smp}"
70    }
71    
72    
73  # get_driver_modules $hw_item  # get_driver_modules $hw_item
74  get_driver_modules()  get_driver_modules()
75  {  {
# Line 64  remove_duplicates() Line 113  remove_duplicates()
113   fi   fi
114   done   done
115    
116     unset list
117    
118   # remove all ':' and show the cleaned list   # remove all ':' and show the cleaned list
119   # this way fixes double spaces also   # this way fixes double spaces also
120   for i in $(echo ${fixed_list} | sed "s|:| |g")   for i in $(echo ${fixed_list} | sed "s|:| |g")
121   do   do
122   echo "${i}"   list+=" ${i}"
123   done   done
124    
125     echo "${list}"
126  }  }
127    
128  get_x11_driver_modules()  get_x11_driver_modules()
# Line 145  create_initrd() Line 198  create_initrd()
198  # done  # done
199    
200  #create_initrd /root/TEST/initrd  #create_initrd /root/TEST/initrd
201  get_driver_modules cdrom  #get_driver_modules cdrom
202  #get_driver_modules disk  #get_driver_modules disk
203  #get_driver_modules scsi  #get_driver_modules scsi
204  #get_driver_modules all  #get_driver_modules all
205    
206  # network  # network
207  #get_hwinfo netcard  #get_hwinfo --with-description netcard
208  #get_driver_modules netcard  #get_driver_modules netcard
209    
210  #get_hwinfo disk  #get_hwinfo disk

Legend:
Removed from v.574  
changed lines
  Added in v.767