Windows
GPU passthrough
TODO romparser
EAC bypass
qm.conf
args: -cpu 'hv-vendor-id=0123756792CD' -smbios 'type=0...' -smbios 'type=1...'
get_smbios.sh
#!/bin/bash # See https://www.qemu.org/docs/master/system/invocation.html?highlight=smbios#hxtool-4 declare -A smb0 declare -A smb1 declare -A smb2 declare -A smb3 declare -A smb4 declare -A smb11 declare -A smb17 function addDmi () { declare -n smb="smb$1" local dmiFle="/sys/class/dmi/id/$3" if [[ -f "$dmiFle" ]]; then smb[$2]=$(cat "$dmiFle") return fi local dmiDec=$(dmidecode --string "$3") if [[ $? -eq 0 ]]; then smb[$2]="$dmiDec" else smb[$2]="Default string" fi } function addDmiField () { declare -n smb="smb$1" local dmiDec=$(dmidecode -t $1 | grep -E "\s$3:" | head -n1 | grep -E -o ':\s+.*$' | cut -c3-) smb[$2]="$dmiDec" } function addStr () { declare -n smb="smb$1" smb[$2]="$3" } function printSmbType () { declare -n smb="smb$1" echo -n "-smbios 'type=$1" for key in "${!smb[@]}"; do local val="${smb[$key]/,/,,}" if [[ -z "$val" ]]; then val="''"; fi echo -n ",$key=$val" done echo -n "' " } addDmi 0 vendor bios_vendor addDmi 0 version bios_version addDmi 0 date bios_date addDmi 0 release bios_release addStr 0 uefi on addDmi 1 manufacturer sys_vendor addDmi 1 product product_name addDmi 1 version product_version addDmi 1 serial product_serial addDmi 1 uuid product_uuid addDmi 1 sku product_sku addDmi 1 family product_family addDmi 2 manufacturer board_vendor addDmi 2 product board_name addDmi 2 version board_version addDmi 2 serial board_serial addDmi 2 asset board_asset_tag addDmiField 2 location 'Location In Chassis' addDmi 3 manufacturer chassis_vendor addDmi 3 version chassis_version addDmi 3 serial chassis_serial addDmi 3 asset chassis_asset_tag addDmiField 3 sku 'SKU Number' addDmiField 4 sock_pfx 'Socket Designation' addDmi 4 manufacturer processor-manufacturer addDmi 4 version processor-version addDmiField 4 serial 'Serial Number' addDmiField 4 asset 'Asset Tag' addDmi 4 part processor-family addStr 11 value 'Default string' addStr 17 loc_pfx 'DIMM 0' addStr 17 bank 'Bank 0' addDmiField 17 manufacturer 'Manufacturer' addDmiField 17 serial 'Serial Number' addDmiField 17 asset 'Asset Tag' addDmiField 17 part 'Part Number' addStr 17 speed 3200 printSmbType 0 printSmbType 1 printSmbType 2 printSmbType 3 printSmbType 4 printSmbType 11 printSmbType 17 echo ''