diff options
author | Simon Rettberg | 2016-10-19 12:07:04 +0200 |
---|---|---|
committer | Simon Rettberg | 2016-10-19 12:07:04 +0200 |
commit | 9346d24e07d9e988e08cc1447d1f4b150925a6f7 (patch) | |
tree | 603642f8b28e0621685d58e63e35236e798e0633 | |
parent | [rfs-stage31] Show more information if boot interface could not be determined (diff) | |
download | tm-scripts-9346d24e07d9e988e08cc1447d1f4b150925a6f7.tar.gz tm-scripts-9346d24e07d9e988e08cc1447d1f4b150925a6f7.tar.xz tm-scripts-9346d24e07d9e988e08cc1447d1f4b150925a6f7.zip |
[vmware/run-virt] Try to rename includes to what they actually do
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_static_directory_structure.inc (renamed from remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_config_files.inc) | 6 | ||||
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmhome_preferences_file.inc | 1 | ||||
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/determine_hardware_limitations.inc (renamed from remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmware_config_file.inc) | 9 | ||||
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/parse_vmx.inc | 182 | ||||
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_final_vmx.inc | 189 | ||||
-rw-r--r-- | remote/modules/vmware/data/opt/openslx/vmchooser/vmware/run-virt.include | 22 |
6 files changed, 204 insertions, 205 deletions
diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_config_files.inc b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_static_directory_structure.inc index 555688bf..96363de3 100644 --- a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_config_files.inc +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_static_directory_structure.inc @@ -13,12 +13,6 @@ mkdir -p "$confdir" >/dev/null 2>&1 mkdir -p "$vmhome/dndlogs" >/dev/null 2>&1 touch "$vmhome/dndlogs/dndlog.conf" >/dev/null 2>&1 -# create preferences file ${vmhome}/preferences -source "${VMWAREINCLUDEDIR}/create_vmhome_preferences_file.inc" && create_vmhome_preferences_file - -# create VMware config file (conffile) -source "${VMWAREINCLUDEDIR}/create_vmware_config_file.inc" - # link to conffile if confdir != redodir [ "$confdir" != "$redodir" ] && ln -s "$conffile" "$redodir/run-vmware.conf" >/dev/null 2>&1 diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmhome_preferences_file.inc b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmhome_preferences_file.inc index b618041c..d50402f3 100644 --- a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmhome_preferences_file.inc +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmhome_preferences_file.inc @@ -68,4 +68,5 @@ create_vmhome_preferences_file() { echo 'pref.hotkey.rightControl = "true"' >> "$vmhome/preferences" fi writelog "Vmware preferences file created in $vmhome." + true } diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmware_config_file.inc b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/determine_hardware_limitations.inc index 54af0dbc..84d959ea 100644 --- a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/create_vmware_config_file.inc +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/determine_hardware_limitations.inc @@ -1,9 +1,7 @@ ######################################## -# Include: Create vmware startup files # +# Include: Determine hw limitations depending on hwver and guest os # ######################################## -writelog "Creating vmware configuration file: $conffile" - MAXMEM="9999999" MAXCORES="4" shfolders="TRUE" @@ -183,8 +181,5 @@ else fi [ "$mem" -ge "$MAXMEM" ] && mem="$MAXMEM" -[ "$hwver" -lt "7" -a "$mem" -gt "3500" ] && mem="3500" - -# set the appropriate permissions for the vmware config file -chmod u+rwx "${conffile}" >/dev/null 2>&1 +[ "$HWVER" -lt "7" -a "$mem" -gt "3500" ] && mem="3500" diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/parse_vmx.inc b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/parse_vmx.inc index 974c9839..dec80e1d 100644 --- a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/parse_vmx.inc +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/parse_vmx.inc @@ -4,187 +4,5 @@ writelog "Parsing virtual machine description file..." -# check for vmdk file marker %VM_DISK_PATH% and put vmdk path in it's place: also VM_DISK_MODE -# and VM_DISK_REDOLOGDIR. -# IMAGE=$(grep -io '<image_path.*"' "${xmlfile}" | sed -e "s/&.*;/; /g" | awk -F '"' '{ print $2 }') -sed -i 's#%VM_DISK_PATH%#'"$vm_diskfile"'#g' "${TMPCONFIG}" -sed -i 's#%VM_DISK_MODE%#'"independent-nonpersistent"'#g' "${TMPCONFIG}" -sed -i 's#%VM_DISK_REDOLOGDIR%#'"$redodir"'#g' "${TMPCONFIG}" - -# Ethernet: All we do is entering a generated MAC, as we do not want to interfere -# in the possible case no networking is wanted. -writelog "Guest MAC: $macaddr" -echo 'ethernet0.addressType = "static"' >> "${TMPCONFIG}" -echo 'ethernet0.address = "'"${macaddr}"'"' >> "${TMPCONFIG}" - -# DVD, CDROM -# XXX: For now it's safe to assume ide channel 1 is free, as we support only one HDD, and if it's IDE, it's on channel 0 -cat >> "${TMPCONFIG}" <<-HEREEND -ide1:0.present = "$cdrom0" -ide1:0.autodetect = "TRUE" -ide1:0.fileName = "auto detect" -ide1:0.deviceType = "cdrom-raw" -ide1:1.present = "$cdrom1" -ide1:1.autodetect = "TRUE" -ide1:1.fileName = "auto detect" -ide1:1.deviceType = "cdrom-raw" -HEREEND - -if [ -n "$FLOPPYIMG" ]; then - floppy1="TRUE" -else - floppy1="FALSE" -fi - -# Floppies: -cat >> "${TMPCONFIG}" <<-HEREEND -floppy0.present = "$floppy0" -floppy0.startConnected = "FALSE" -floppy0.autodetect = "TRUE" -floppy0.fileName = "auto detect" -floppy1.present = "$floppy1" -floppy1.startConnected = "TRUE" -floppy1.fileType = "file" -floppy1.fileName = "$FLOPPYIMG" -HEREEND - -writelog "numvcpus = ${cpu_cores} - maxvcpus=${real_core_count}" - -# RAM, CPUs -cat >> "${TMPCONFIG}" <<-HEREEND -numvcpus = "$cpu_cores" -cpuid.coresPerSocket = "$cores_per_socket" -maxvcpus = "$real_core_count" -memsize = "$mem" -MemAllowAutoScaleDown = "FALSE" -MemTrimRate = "-1" -HEREEND - -# USB fallback: Only write usb config if there's none -if ! grep -q -i "^usb\.present" "${TMPCONFIG}"; then - # Nothing found, go ahead - if [ -n "$SLX_EXAM" ]; then - # Exam mode: Default to no USB - sed -i '/^usb\./Id' "${TMPCONFIG}" - echo 'usb.present = "FALSE"' >> "${TMPCONFIG}" - else - cat >> "${TMPCONFIG}" <<-HEREEND - usb.present = "TRUE" - HEREEND - fi -fi -sed -i '/^usb\.generic\.autoconnect/Id' "${TMPCONFIG}" -echo 'usb.generic.autoconnect = "TRUE"' >> "${TMPCONFIG}" -# USB 3.0 support changes quality and has different side effects -# with every minor release of vmware. Always force 2.0 for now. -# TODO: Get it fixed by vmware? -sed -i '/^ehci\.present/Id;/^usb_xhci\.present/Id' "${TMPCONFIG}" -echo 'ehci.present = "TRUE"' >> "${TMPCONFIG}" - -# shared folders -if [ "$HGFS_DISABLED" = "FALSE" ]; then - cat >> "${TMPCONFIG}" <<-HEREEND - sharedFolder.option = "alwaysEnabled" - sharedFolder0.present = "$shfolders" - sharedFolder0.enabled = "$shfolders" - sharedFolder0.expiration = "never" - sharedFolder0.guestName = "$homesharename" - sharedFolder0.hostPath = "$homesharepath" - sharedFolder0.readAccess = "TRUE" - sharedFolder0.writeAccess = "TRUE" - sharedFolder1.present = "$shfolders" - sharedFolder1.enabled = "$shfolders" - sharedFolder1.expiration = "never" - sharedFolder1.guestName = "$commonsharename" - sharedFolder1.hostPath = "$commonsharepath" - sharedFolder1.readAccess = "TRUE" - sharedFolder1.writeAccess = "FALSE" - sharedFolder.maxNum = "2" - hgfs.mapRootShare = "TRUE" - hgfs.linkRootShare = "TRUE" - HEREEND -fi - -# Isolation tools: settings -cat >> "${TMPCONFIG}" <<-HEREEND -isolation.tools.hgfs.disable = "$HGFS_DISABLED" -isolation.tools.dnd.disable = "FALSE" -isolation.tools.copy.enable = "TRUE" -isolation.tools.paste.enabled = "TRUE" -HEREEND - -# Serial, parallel: Empty, nothing is being currently set. TODO later. - -# Graphics, GPU: 3D will be enabled (even if vmware doesn't support the chip) if we whitelisted it. -if [ -n "$SLX_VMWARE_3D" ]; then - writelog "FORCE3D set - overriding 3D in vmx file." - echo 'mks.gl.allowBlacklistedDrivers = "TRUE"' >> "${TMPCONFIG}" - # We override... play safe and cap the hwVersion to 10, since some i915 chips goofed up with 12 - # Investigate if we might have to do this in other cases where we don't override - if grep -qi '^mks.enable3d.*true' "${TMPCONFIG}"; then - vmw_cap_hw_version "10" - fi -else - writelog "FORCE3D not set - 3D will only work if GPU/driver is whitelisted by vmware." -fi - -# Disable DPI scaling information passing via vmware tools -sed -i '/^gui.applyHostDisplayScaling/Id' "${TMPCONFIG}" -echo 'gui.applyHostDisplayScalingToGuest = "FALSE"' >> "${TMPCONFIG}" - -# Additinal exam mode settings -if [ -n "$SLX_EXAM" ]; then - echo 'gui.restricted = "true"' >> "${TMPCONFIG}" -fi - -# Hack resolution if we know the desired one is not in the default list of vmx_svga -# For now, only do it on the odd ones, as we don't know if this has any side effects -# This seems unnecessary on Win7 but is required on WinXP - need more research for other OSs -case "$RESOLUTION" in - 1600x900|2560x1440|2880x1800|3200x1800) - X=${RESOLUTION%x*} - Y=${RESOLUTION#*x} - BYTES=$(( ( ( X * Y * 4 + 65535 ) / 65536 ) * 65536 )) - [ "$BYTES" -lt 16777216 ] && BYTES=16777216 - cat >> "${TMPCONFIG}" <<-EOF - svga.autodetect = "FALSE" - svga.vramSize = $BYTES - svga.maxWidth = $X - svga.maxHeight = $Y - EOF - ;; -esac - -# Killing duplicate lines (output much nicer than sort -u): -awk '!a[$0]++' "${TMPCONFIG}" > "${TMPCONFIG}.tmp" && mv -f "${TMPCONFIG}.tmp" "${TMPCONFIG}" - -# Apply $maxhardwareversion to final VMX HWVER=$(grep -i -m1 '^virtualHW.version *= *' "${TMPCONFIG}" | awk -F '=' '{print $2}' | sed -r 's/[^0-9]//g') -if [ -n "$HWVER" ] && [ "$HWVER" -gt "$maxhardwareversion" ]; then - writelog "Hardware version capped to $maxhardwareversion (was $HWVER)" - sed -i 's/^virtualHW\.version.*$/virtualHW.version = "'$maxhardwareversion'"/I' "${TMPCONFIG}" - HWVER="$maxhardwareversion" -fi - -# Enable nested virtualization if not specified in remote vmx -if [ -e "/run/hwinfo" ] && ! grep -qi '^vhv\.enable' "${TMPCONFIG}" \ - && grep -qE '^flags\s*:.*\b(ept|npt)\b' "/proc/cpuinfo" \ - && [ "$HWVER" -ge "9" ]; then - . "/run/hwinfo" - [ "${HW_KVM}" = "ENABLED" ] && echo 'vhv.enable = "TRUE"' >> "${TMPCONFIG}" -fi -# TODO: Need a way to check if supported by hardware before enabling! -#grep -qi '^vpmc\.enable' "${TMPCONFIG}" || echo 'vpmc.enable = "TRUE"' >> "${TMPCONFIG}" - -# Disable space check warnings -sed -i '/^mainMem.freeSpaceCheck/Id' "${TMPCONFIG}" -echo 'mainMem.freeSpaceCheck = "FALSE"' >> "${TMPCONFIG}" - -# At last_ Let's copy it to $confdir/run-vmware.conf -if cp -p "${TMPCONFIG}" "$conffile"; then - writelog "Copied TMPDIR/IMGUUID ${TMPCONFIG} to conffile ${conffile}" -else - writelog "Could not copy TMPDIR/IMGUUID -${TMPCONFIG}- to conffile ${conffile}!" - cleanexit 1 -fi diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_final_vmx.inc b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_final_vmx.inc new file mode 100644 index 00000000..41548154 --- /dev/null +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/includes/write_final_vmx.inc @@ -0,0 +1,189 @@ + +# check for vmdk file marker %VM_DISK_PATH% and put vmdk path in it's place: also VM_DISK_MODE +# and VM_DISK_REDOLOGDIR. +sed -i 's#%VM_DISK_PATH%#'"$vm_diskfile"'#g' "${TMPCONFIG}" +sed -i 's#%VM_DISK_MODE%#'"independent-nonpersistent"'#g' "${TMPCONFIG}" +sed -i 's#%VM_DISK_REDOLOGDIR%#'"$redodir"'#g' "${TMPCONFIG}" + +# Ethernet: All we do is entering a generated MAC, as we do not want to interfere +# in the possible case no networking is wanted. +writelog "Guest MAC: $macaddr" +echo 'ethernet0.addressType = "static"' >> "${TMPCONFIG}" +echo 'ethernet0.address = "'"${macaddr}"'"' >> "${TMPCONFIG}" + +# DVD, CDROM +# XXX: For now it's safe to assume ide channel 1 is free, as we support only one HDD, and if it's IDE, it's on channel 0 +cat >> "${TMPCONFIG}" <<-HEREEND +ide1:0.present = "$cdrom0" +ide1:0.autodetect = "TRUE" +ide1:0.fileName = "auto detect" +ide1:0.deviceType = "cdrom-raw" +ide1:1.present = "$cdrom1" +ide1:1.autodetect = "TRUE" +ide1:1.fileName = "auto detect" +ide1:1.deviceType = "cdrom-raw" +HEREEND + +if [ -n "$FLOPPYIMG" ]; then + floppy1="TRUE" +else + floppy1="FALSE" +fi + +# Floppies: +cat >> "${TMPCONFIG}" <<-HEREEND +floppy0.present = "$floppy0" +floppy0.startConnected = "FALSE" +floppy0.autodetect = "TRUE" +floppy0.fileName = "auto detect" +floppy1.present = "$floppy1" +floppy1.startConnected = "TRUE" +floppy1.fileType = "file" +floppy1.fileName = "$FLOPPYIMG" +HEREEND + +writelog "numvcpus = ${cpu_cores} - maxvcpus=${real_core_count}" + +# RAM, CPUs +cat >> "${TMPCONFIG}" <<-HEREEND +numvcpus = "$cpu_cores" +cpuid.coresPerSocket = "$cores_per_socket" +maxvcpus = "$real_core_count" +memsize = "$mem" +MemAllowAutoScaleDown = "FALSE" +MemTrimRate = "-1" +HEREEND + +# USB fallback: Only write usb config if there's none +if ! grep -q -i "^usb\.present" "${TMPCONFIG}"; then + # Nothing found, go ahead + if [ -n "$SLX_EXAM" ]; then + # Exam mode: Default to no USB + sed -i '/^usb\./Id' "${TMPCONFIG}" + echo 'usb.present = "FALSE"' >> "${TMPCONFIG}" + else + cat >> "${TMPCONFIG}" <<-HEREEND + usb.present = "TRUE" + HEREEND + fi +fi +sed -i '/^usb\.generic\.autoconnect/Id' "${TMPCONFIG}" +echo 'usb.generic.autoconnect = "TRUE"' >> "${TMPCONFIG}" +# USB 3.0 support changes quality and has different side effects +# with every minor release of vmware. Always force 2.0 for now. +# TODO: Get it fixed by vmware? +sed -i '/^ehci\.present/Id;/^usb_xhci\.present/Id' "${TMPCONFIG}" +echo 'ehci.present = "TRUE"' >> "${TMPCONFIG}" + +# shared folders +if [ "$HGFS_DISABLED" = "FALSE" ]; then + cat >> "${TMPCONFIG}" <<-HEREEND + sharedFolder.option = "alwaysEnabled" + sharedFolder0.present = "$shfolders" + sharedFolder0.enabled = "$shfolders" + sharedFolder0.expiration = "never" + sharedFolder0.guestName = "$homesharename" + sharedFolder0.hostPath = "$homesharepath" + sharedFolder0.readAccess = "TRUE" + sharedFolder0.writeAccess = "TRUE" + sharedFolder1.present = "$shfolders" + sharedFolder1.enabled = "$shfolders" + sharedFolder1.expiration = "never" + sharedFolder1.guestName = "$commonsharename" + sharedFolder1.hostPath = "$commonsharepath" + sharedFolder1.readAccess = "TRUE" + sharedFolder1.writeAccess = "FALSE" + sharedFolder.maxNum = "2" + hgfs.mapRootShare = "TRUE" + hgfs.linkRootShare = "TRUE" + HEREEND +fi + +# Isolation tools: settings +cat >> "${TMPCONFIG}" <<-HEREEND +isolation.tools.hgfs.disable = "$HGFS_DISABLED" +isolation.tools.dnd.disable = "FALSE" +isolation.tools.copy.enable = "TRUE" +isolation.tools.paste.enabled = "TRUE" +HEREEND + +# Serial, parallel: Empty, nothing is being currently set. TODO later. + +# Graphics, GPU: 3D will be enabled (even if vmware doesn't support the chip) if we whitelisted it. +if [ -n "$SLX_VMWARE_3D" ]; then + writelog "FORCE3D set - overriding 3D in vmx file." + echo 'mks.gl.allowBlacklistedDrivers = "TRUE"' >> "${TMPCONFIG}" + # We override... play safe and cap the hwVersion to 10, since some i915 chips goofed up with 12 + # Investigate if we might have to do this in other cases where we don't override + if grep -qi '^mks.enable3d.*true' "${TMPCONFIG}"; then + vmw_cap_hw_version "10" + fi +else + writelog "FORCE3D not set - 3D will only work if GPU/driver is whitelisted by vmware." +fi + +# Disable DPI scaling information passing via vmware tools +sed -i '/^gui.applyHostDisplayScaling/Id' "${TMPCONFIG}" +echo 'gui.applyHostDisplayScalingToGuest = "FALSE"' >> "${TMPCONFIG}" + +# Additinal exam mode settings +if [ -n "$SLX_EXAM" ]; then + echo 'gui.restricted = "true"' >> "${TMPCONFIG}" +fi + +# Hack resolution if we know the desired one is not in the default list of vmx_svga +# For now, only do it on the odd ones, as we don't know if this has any side effects +# This seems unnecessary on Win7 but is required on WinXP - need more research for other OSs +case "$RESOLUTION" in + 1600x900|2560x1440|2880x1800|3200x1800) + X=${RESOLUTION%x*} + Y=${RESOLUTION#*x} + BYTES=$(( ( ( X * Y * 4 + 65535 ) / 65536 ) * 65536 )) + [ "$BYTES" -lt 16777216 ] && BYTES=16777216 + cat >> "${TMPCONFIG}" <<-EOF + svga.autodetect = "FALSE" + svga.vramSize = $BYTES + svga.maxWidth = $X + svga.maxHeight = $Y + EOF + ;; +esac + +# Killing duplicate lines (output much nicer than sort -u): +awk '!a[$0]++' "${TMPCONFIG}" > "${TMPCONFIG}.tmp" && mv -f "${TMPCONFIG}.tmp" "${TMPCONFIG}" + +# Apply $maxhardwareversion to final VMX +if [ -n "$HWVER" ] && [ "$HWVER" -gt "$maxhardwareversion" ]; then + writelog "Hardware version capped to $maxhardwareversion (was $HWVER)" + sed -i 's/^virtualHW\.version.*$/virtualHW.version = "'$maxhardwareversion'"/I' "${TMPCONFIG}" + HWVER="$maxhardwareversion" +fi + +# Enable nested virtualization if not specified in remote vmx +if [ -e "/run/hwinfo" ] && ! grep -qi '^vhv\.enable' "${TMPCONFIG}" \ + && grep -qE '^flags\s*:.*\b(ept|npt)\b' "/proc/cpuinfo" \ + && [ "$HWVER" -ge "9" ]; then + . "/run/hwinfo" + [ "${HW_KVM}" = "ENABLED" ] && echo 'vhv.enable = "TRUE"' >> "${TMPCONFIG}" +fi +# TODO: Need a way to check if supported by hardware before enabling! +#grep -qi '^vpmc\.enable' "${TMPCONFIG}" || echo 'vpmc.enable = "TRUE"' >> "${TMPCONFIG}" + +# Disable space check warnings +sed -i '/^mainMem.freeSpaceCheck/Id' "${TMPCONFIG}" +echo 'mainMem.freeSpaceCheck = "FALSE"' >> "${TMPCONFIG}" + +# See if there are any USB devices connected that we want to pass through immediately +get_usb_devices 'usb.autoConnect.deviceXXXXX = "0x%VENDOR%:0x%PRODUCT%"' \ + | sed -r 's/0x0+/0x/g' \ + | awk '{sub(/XXXXX/,NR-1)}1' \ + >> "${TMPCONFIG}" + +# At last_ Let's copy it to $confdir/run-vmware.conf +if cp -p "${TMPCONFIG}" "$conffile"; then + writelog "Copied TMPDIR/IMGUUID ${TMPCONFIG} to conffile ${conffile}" +else + writelog "Could not copy TMPDIR/IMGUUID -${TMPCONFIG}- to conffile ${conffile}!" + cleanexit 1 +fi + diff --git a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/run-virt.include b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/run-virt.include index 4d263272..08188b58 100644 --- a/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/run-virt.include +++ b/remote/modules/vmware/data/opt/openslx/vmchooser/vmware/run-virt.include @@ -42,24 +42,26 @@ if [ "$LEGACY" ]; then # set_vmware_startup_file source "${VMWAREINCLUDEDIR}/write_config_files_legacy.inc" && write_config_files_legacy else - # write configuration files - source "${VMWAREINCLUDEDIR}/write_config_files.inc" + # get information from downloaded vmx + source "${VMWAREINCLUDEDIR}/parse_vmx.inc" + + # determine limitations wrt RAM and CPU count of VM + source "${VMWAREINCLUDEDIR}/determine_hardware_limitations.inc" + + # create file and directory structure for vmware setup + source "${VMWAREINCLUDEDIR}/create_static_directory_structure.inc" + + # create preferences file ${vmhome}/preferences + source "${VMWAREINCLUDEDIR}/create_vmhome_preferences_file.inc" && create_vmhome_preferences_file # parse the given vmx file - source "${VMWAREINCLUDEDIR}/parse_vmx.inc" + source "${VMWAREINCLUDEDIR}/write_final_vmx.inc" fi # logging and stdout # needs writelog() from vmchooser-run_virt source "${VMWAREINCLUDEDIR}/logging.inc" && logging -# See if there are any USB devices connected that we want to pass through immediately -get_usb_devices 'usb.autoConnect.deviceXXXXX = "0x%VENDOR%:0x%PRODUCT%"' \ - | sed -r 's/0x0+/0x/g' \ - | awk '{sub(/XXXXX/,NR-1)}1' \ - >> "$conffile" - - # For debugging cp "$conffile" "/tmp/vmware-last-config" |