123456789101112131415161718192021222324252627282930313233343536373839 |
- sanitize_name_x86() {
- sed -e '
- y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;
- s/[^a-z0-9_-]\+/-/g;
- s/^-//;
- s/-$//;
- ' "$@"
- }
- do_sysinfo_x86() {
- local vendor product file
- for file in sys_vendor board_vendor; do
- vendor="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
- [ -n "$vendor" ] && break
- done
- for file in product_name board_name; do
- product="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
- case "$vendor:$product" in
- "Supermicro:Super Server")
- continue
- ;;
- ?*:?*)
- break
- ;;
- esac
- done
- [ -n "$vendor" -a -n "$product" ] || return
- mkdir -p /tmp/sysinfo
- echo "$vendor $product" > /tmp/sysinfo/model
- sanitize_name_x86 /tmp/sysinfo/model > /tmp/sysinfo/board_name
- }
- boot_hook_add preinit_main do_sysinfo_x86
|