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)" [ -n "$product" ] && break done [ -n "$vendor" -a -n "$product" ] || return mkdir -p /tmp/sysinfo echo "$vendor $product" > /tmp/sysinfo/model sed -e ' y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/; s/[^a-z0-9_-]\+/-/g; s/^-//; s/-$//; ' /tmp/sysinfo/model > /tmp/sysinfo/board_name } boot_hook_add preinit_main do_sysinfo_x86