summaryrefslogtreecommitdiffstats
path: root/core/modules/vmware12
diff options
context:
space:
mode:
authorSimon Rettberg2018-10-26 13:07:06 +0200
committerSimon Rettberg2018-10-26 13:07:06 +0200
commit63a6524ff47461911258ccb914a7cdd5f05e523b (patch)
tree0a224079c657894b08c292bf437c4fd863b9d34e /core/modules/vmware12
parent[vmware12] Improve xscreensaver ungrab script (diff)
downloadmltk-63a6524ff47461911258ccb914a7cdd5f05e523b.tar.gz
mltk-63a6524ff47461911258ccb914a7cdd5f05e523b.tar.xz
mltk-63a6524ff47461911258ccb914a7cdd5f05e523b.zip
[vmware-common] Common files for vmware12 and vmware14
Diffstat (limited to 'core/modules/vmware12')
-rwxr-xr-xcore/modules/vmware12/data/addon-init6
-rw-r--r--core/modules/vmware12/data/etc/X11/Xreset.d/vmware17
l---------core/modules/vmware12/data/etc/systemd/system/graphical.target.wants/vmware.service1
-rw-r--r--core/modules/vmware12/data/etc/systemd/system/vmware.service9
-rw-r--r--core/modules/vmware12/data/etc/vmware-vix/bootstrap2
-rw-r--r--core/modules/vmware12/data/etc/vmware/bootstrap12
l---------core/modules/vmware12/data/etc/vmware/icu1
-rw-r--r--core/modules/vmware12/data/etc/vmware/locations3
-rw-r--r--core/modules/vmware12/data/etc/vmware/usbarb.rules4
-rwxr-xr-xcore/modules/vmware12/data/opt/openslx/scripts/systemd-vmware_env140
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/create_vmhome_preferences_file.inc81
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/determine_hardware_limitations.inc198
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/init_core.inc55
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/log_config_summary.inc60
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/parse_vmx.inc32
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc301
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/nvrambin270840 -> 0 bytes
-rw-r--r--core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include62
-rwxr-xr-xcore/modules/vmware12/data/opt/openslx/xscreensaver/ungrab.d/vmware31
l---------core/modules/vmware12/data/usr/bin/vmplayer1
l---------core/modules/vmware12/data/usr/bin/vmware1
-rw-r--r--core/modules/vmware12/data/usr/share/icons/hicolor/index.theme1662
-rw-r--r--core/modules/vmware12/module.conf2
23 files changed, 1 insertions, 2680 deletions
diff --git a/core/modules/vmware12/data/addon-init b/core/modules/vmware12/data/addon-init
deleted file mode 100755
index d844c282..00000000
--- a/core/modules/vmware12/data/addon-init
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/ash
-
-systemctl daemon-reload
-systemctl start vmware
-exit 0
-
diff --git a/core/modules/vmware12/data/etc/X11/Xreset.d/vmware b/core/modules/vmware12/data/etc/X11/Xreset.d/vmware
deleted file mode 100644
index 83bfb392..00000000
--- a/core/modules/vmware12/data/etc/X11/Xreset.d/vmware
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-# VMWare cleanup
-#
-
-# Unmount dirs that vmware sometimes leaves around
-VMWARE_TMP_DIRS="$(cat /proc/mounts | grep "/tmp/vmware-" | awk -F " " '{print $1}')"
-for DIR in $VMWARE_TMP_DIRS; do
- umount "$DIR" && rmdir "$DIR"
-done
-
-# Delete redo/temp files that sometimes stay around e.g. on vmware crash
-for file in $(find /tmp/virt/vmware -type f -size +4M); do
- fuser -s "$file" || rm -- "$file"
-done
-
-true
-
diff --git a/core/modules/vmware12/data/etc/systemd/system/graphical.target.wants/vmware.service b/core/modules/vmware12/data/etc/systemd/system/graphical.target.wants/vmware.service
deleted file mode 120000
index 7deb4820..00000000
--- a/core/modules/vmware12/data/etc/systemd/system/graphical.target.wants/vmware.service
+++ /dev/null
@@ -1 +0,0 @@
-../vmware.service \ No newline at end of file
diff --git a/core/modules/vmware12/data/etc/systemd/system/vmware.service b/core/modules/vmware12/data/etc/systemd/system/vmware.service
deleted file mode 100644
index 78f75726..00000000
--- a/core/modules/vmware12/data/etc/systemd/system/vmware.service
+++ /dev/null
@@ -1,9 +0,0 @@
-[Unit]
-Description=Sets up the vmware environment
-Requires=run-virt-env.service setup-partitions.service network.target
-After=run-virt-env.service setup-partitions.service network.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=/opt/openslx/scripts/systemd-vmware_env start
diff --git a/core/modules/vmware12/data/etc/vmware-vix/bootstrap b/core/modules/vmware12/data/etc/vmware-vix/bootstrap
deleted file mode 100644
index 425074de..00000000
--- a/core/modules/vmware12/data/etc/vmware-vix/bootstrap
+++ /dev/null
@@ -1,2 +0,0 @@
-BINDIR="/usr/bin"
-
diff --git a/core/modules/vmware12/data/etc/vmware/bootstrap b/core/modules/vmware12/data/etc/vmware/bootstrap
deleted file mode 100644
index 0cc4af90..00000000
--- a/core/modules/vmware12/data/etc/vmware/bootstrap
+++ /dev/null
@@ -1,12 +0,0 @@
-PREFIX="/usr"
-BINDIR="/usr/bin"
-SBINDIR="/usr/sbin"
-LIBDIR="/usr/lib"
-DATADIR="/usr/share"
-SYSCONFDIR="/etc"
-DOCDIR="/usr/share/doc"
-MANDIR="/usr/share/man"
-INCLUDEDIR="/usr/include"
-INITDIR="/etc"
-INITSCRIPTDIR="/etc/init.d"
-
diff --git a/core/modules/vmware12/data/etc/vmware/icu b/core/modules/vmware12/data/etc/vmware/icu
deleted file mode 120000
index d1ebea7d..00000000
--- a/core/modules/vmware12/data/etc/vmware/icu
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/vmware/icu \ No newline at end of file
diff --git a/core/modules/vmware12/data/etc/vmware/locations b/core/modules/vmware12/data/etc/vmware/locations
deleted file mode 100644
index 2d419546..00000000
--- a/core/modules/vmware12/data/etc/vmware/locations
+++ /dev/null
@@ -1,3 +0,0 @@
-# Empty locations file to catch downgrade
-# to WS 6.0
-# OpenSLX: No idea what above means, but better have this file... ;-)
diff --git a/core/modules/vmware12/data/etc/vmware/usbarb.rules b/core/modules/vmware12/data/etc/vmware/usbarb.rules
deleted file mode 100644
index ae107c7b..00000000
--- a/core/modules/vmware12/data/etc/vmware/usbarb.rules
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "version": 1,
- "rules": []
-}
diff --git a/core/modules/vmware12/data/opt/openslx/scripts/systemd-vmware_env b/core/modules/vmware12/data/opt/openslx/scripts/systemd-vmware_env
deleted file mode 100755
index a39cb1e6..00000000
--- a/core/modules/vmware12/data/opt/openslx/scripts/systemd-vmware_env
+++ /dev/null
@@ -1,140 +0,0 @@
-#!/bin/ash
-# -----------------------------------------------------------------------------
-#
-# Copyright (c) 2013..2018 bwLehrpool-Projektteam
-#
-# This program/file is free software distributed under the GPL version 2.
-# See https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# If you have any feedback please consult https://bwlehrpool.de and
-# send your feedback to bwlehrpool@hs-offenburg.de.
-#
-# General information about bwLehrpool can be found at https://bwlehrpool.de
-#
-# -----------------------------------------------------------------------------
-# systemd-vmware_env
-# - This is the systemd configuration and provisioning script for the various
-# VMware modules and services
-################################################################################
-
-export PATH="$PATH:/opt/openslx/sbin:/opt/openslx/bin"
-
-VMWARE_CONF_DIR=/opt/openslx/vmchooser/vmware
-VMCHOOSER_CONF_DIR=/opt/openslx/vmchooser/config
-
-. /opt/openslx/config
-
-load_modules () {
- local FAILED=""
- # module stuff
- insmod /lib/modules/vmware/vmmon.ko || FAILED="$FAILED vmmon"
- insmod /lib/modules/vmware/vmnet.ko || FAILED="$FAILED vmnet"
- #insmod /lib/modules/vmware/vmci.ko || FAILED="$FAILED vmci"
- #insmod /lib/modules/vmware/vmblock.ko || FAILED="$FAILED vmblock"
- #insmod /lib/modules/vmware/vsock.ko || FAILED="$FAILED vsock"
- [ -n "$FAILED" ] && slxlog "vmware-insmod" "Error loading vmware kernel module(s) $FAILED"
-}
-
-unload_modules () {
- rmmod vmnet vmmon #vsock vmci vmblock
-}
-
-vmnet_create() {
- vmnet="$1"
- # first, create device node
- dev="/dev/vmnet${vmnet}"
- if ! [ -c "$dev" ] && ! mknod "${dev}" c 119 "${vmnet}"; then
- slxlog "vmware-node-vmnet" "Could not create ${dev}"
- return 1
- fi
- chmod 0700 "${dev}"
- # now bring it up
- if ! /usr/bin/vmnet-netifup -d "/var/run/vmnet-netifup-vmnet${vmnet}.pid" "${dev}" "vmnet${vmnet}" ; then
- slxlog "vmware-netifup" "Launching /usr/bin/vmnet-netifup for vmnet${vmnet} failed."
- fi
- ip link set dev "vmnet${vmnet}" up
-}
-
-vmnetif () {
- local vmnet nic NICS
- # create the needed devices which effects all vmware options
- # they are not created automatically via module load
- if ! [ -e /dev/vmmon ]; then
- mknod /dev/vmmon c 10 165 || slxlog "vmware-node-vmmon" "Could not create /dev/vmmon"
- fi
- # network interfaces
- # 1) default ones
- for vmnet in 0 1 2; do
- vmnet_create "$vmnet"
- done
- # Set the vmware interface to 9000 too, as br0 will use the smallest of all slave devices
- [ "x$SLX_JUMBO_FRAMES" = "xyes" ] && ip link set dev vmnet0 mtu 9000
- # setup bridge (vmnet0), nat (vmnet1) and software defined networking (vmnet2) interfaces
- brctl addif br0 vmnet0
- brctl addif nat1 vmnet1
- brctl addif vsw2 vmnet2
- # 2) see if we should bridge additional interfaces
- NICS=
- if [ "$SLX_BRIDGE_OTHER_NICS" = "yes" ]; then
- # These will have been set up in our init
- NICS=$( ls -1 /sys/class/net | grep '^br-nic-' | cut -c 8- )
- vmnet=10
- for nic in $NICS; do
- if ! [ "$nic" -gt 0 ] && ! [ "$nic" -eq 0 ]; then
- slxlog "vmware-other-nics" "NaN: br-nic-X has X='$nic'"
- continue
- fi
- # create vmnet10 - vmnetN for these
- vmnet_create "$vmnet"
- brctl addif "br-nic-${nic}" "vmnet${vmnet}"
- vmnet="$(( vmnet + 1 ))"
- done
- fi
- # Printergui rules etc.
- systemctl --no-block restart openslx-iptables.service
-}
-
-vmblock () {
- if ! /usr/bin/vmware-usbarbitrator; then
- slxlog "vmware-usbarb" "Launching /usr/bin/vmware-usbarbitrator failed."
- fi
-}
-
-# create required standard directories
-mkdir -p "/tmp/virt/vmware" "/dev/shm/vmware" "/run/vmware" -m 1777
-
-# FixMe: Should be rewritten for proper systemd operation
-case "$1" in
- start)
- # hack to access the first serial/parallel port
- [ -c /dev/ttyS0 ] && chmod a+rw /dev/ttyS0
- [ -c /dev/parport0 ] && chmod a+rw /dev/parport0
- load_modules
- vmnetif
- vmblock
- ;;
- stop)
- #stop: defines stop function for initscript
- killall vmnet-netifup vmnet-bridge vmware vmplayer vmware-tray
- # might take a while until all services are shut down
- sleep 1
- unload_modules
-
- ;;
- restart)
- #restart: defines restart function for initscript
- $0 stop && $0 start
- ;;
- status)
- #status: defines status function for initscript
- vmstatus
- ;;
-esac
-
-# Breaks performance with certain workloads, so disable.
-# See https://unix.stackexchange.com/a/185172 for details and further references
-echo never > /sys/kernel/mm/transparent_hugepage/defrag
-echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
-
-exit 0
-
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/create_vmhome_preferences_file.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/create_vmhome_preferences_file.inc
deleted file mode 100644
index b4197051..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/create_vmhome_preferences_file.inc
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/bin/bash
-###########################################
-# Include: Create VMware preferences file #
-###########################################
-## Functions ##
-create_vmhome_preferences_file() {
- cat > "${VM_HOME}/preferences" <<-HEREEND
- .encoding = "UTF-8"
- # This configuration file was generated on $(date)
- # by $0 for VMWare version $vmware_version
-
- # updates
- webUpdate.enabled = "FALSE"
- webUpdate.lastCheck.status = "done_updates"
- webUpdate.checkPeriod = "never"
- pref.downloadPermission = "DENY"
- pref.vmplayer.downloadPermission = "DENY"
- pref.vmplayer.webUpdateOnStartup = "FALSE"
- pref.lastUpdateCheckSec = "$(date +%s)"
- # hints
- pref.tip.startup = "FALSE"
- hints.hideAll = "TRUE"
- hint.vmui.showAllUSBDevs = "FALSE"
- hint.usb.disconnectHostdriver = "FALSE"
- hint.vmui.reset = "FALSE"
- hint.vmui.poweroff = "FALSE"
- hint.upgrade.legacyVM = "FALSE"
- hint.tools.toolsReminder = "FALSE"
- hint.nfsmounted.persistent = "FALSE"
- hint.loader.debug.beta = "FALSE"
- hint.leaveFullScreen = "FALSE"
- hint.guestos.xp = "FALSE"
- hint.buslogic.needDriver = "FALSE"
-
- # configs
- prefvmx.defaultVMPath = "${VM_HOME}"
- prefvmx.mru.config = "$VM_RUN_FILE:"
-
- # hot keys
- pref.hotkey.control = "true"
- pref.hotkey.alt = "true"
- pref.hotkey.shift = "true"
- pref.hotkey.gui = "true"
-
- # fullscreen/mouse/keyboard
- pref.fullscreen.toolbarPixels = "0"
- pref.vmplayer.fullscreen.autohide = "TRUE"
- pref.vmplayer.fullscreen.nobar = 1
- pref.grabOnMouseClick = "TRUE"
- pref.grabOnKeyPress = "TRUE"
- pref.motionGrab = "TRUE"
- pref.motionUngrab = "TRUE"
- pref.hideCursorOnUngrab = "TRUE"
- pref.autoFit = "TRUE"
- pref.autoFitFullScreen = "fitGuestToHost"
- pref.autoFitGuestToWindow = "TRUE"
- pref.vmplayer.exit.vmAction = "poweroff"
- pref.vmplayer.confirmOnExit = "TRUE"
- pref.backgroundOnClose = "FALSE"
- pref.trayicon.enabled = "FALSE"
- pref.keyboardAndMouse.vmHotKey.enabled = "FALSE"
- pref.keyboardAndMouse.vmHotKey.count = "0"
-
- # shared folders
- pref.enableAllSharedFolders = "TRUE"
-
- # eula
- pref.vmplayer.firstRunDismissedVersion = "$vmware_version"
- pref.eula.count = "2"
- pref.eula0.product = "VMware Player"
- pref.eula0.build = "$vmware_build"
- pref.eula1.product = "VMware Workstation"
- pref.eula1.build = "$vmware_build"
- HEREEND
- if [ -n "$SLX_EXAM" ]; then
- echo 'pref.hotkey.rightControl = "true"' >> "${VM_HOME}/preferences"
- fi
- writelog "Vmware preferences file created in $VM_HOME."
-}
-
-call_post_source create_vmhome_preferences_file
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/determine_hardware_limitations.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/determine_hardware_limitations.inc
deleted file mode 100644
index b7c59819..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/determine_hardware_limitations.inc
+++ /dev/null
@@ -1,198 +0,0 @@
-#!/bin/bash
-##########################################################################
-# Include: Determine limitations caused by hardware version and guest os #
-##########################################################################
-## Functions
-set_vm_hardware_limits() {
- # Sanity checks
- if isempty VM_OS_TYPE; then
- writelog "VM_OS_TYPE is empty! This should have been parsed from the VM metadata."
- EXIT_TYPE="user" EXIT_REASON="Konnte Gastbetriebsystems der gewählten virtuellen Maschine nicht ermitteln!" cleanexit 1
- fi
-
- declare -g MAXMEM="9999999"
- declare -g MAXCORES="4"
- declare -g SHARED_FOLDERS="TRUE"
- declare -g SOUND_DEV="es1371"
-
- # define hardware configuration depending on the guest OS used
- # this needs to be fixed and is the base for the creation of new VMs
- case "$VM_OS_TYPE" in
- win31*|windows31*)
- VM_OS_TYPE="win31"
- SHARED_FOLDERS="FALSE"
- SOUND_DEV="sb16"
- MAXMEM="32"
- MAXCORES="1"
- ;;
- winnt*|windowsnt*)
- VM_OS_TYPE="winnt"
- SHARED_FOLDERS="FALSE"
- SOUND_DEV="sb16"
- MAXMEM="1000"
- MAXCORES="2"
- ;;
- win95*|windows95*)
- VM_OS_TYPE="win95"
- SHARED_FOLDERS="FALSE"
- MAXMEM="96"
- MAXCORES="1"
- ;;
- win98*|windows98*)
- VM_OS_TYPE="win98"
- MAXMEM="256"
- MAXCORES="1"
- ;;
- winme*|windowsme*)
- VM_OS_TYPE="winme"
- MAXMEM="384"
- MAXCORES="1"
- ;;
- win2000|windows2000|win2000pro*)
- VM_OS_TYPE="win2000pro"
- MAXMEM="4000"
- MAXCORES="2"
- ;;
- win2000srv*|windows2000srv*|win2000serv*|windows2000serv*)
- VM_OS_TYPE="win2000serv"
- SHARED_FOLDERS="FALSE"
- MAXMEM="4000"
- MAXCORES="4"
- ;;
- win2000adv*|windows2000adv*|win2000dat*|windows2000dat*)
- VM_OS_TYPE="win2000advserv"
- SHARED_FOLDERS="FALSE"
- MAXMEM="8000"
- MAXCORES="8"
- ;;
- winnet*64|win*2003*64|windowsnet*64)
- VM_OS_TYPE="winnetstandard-64"
- MAXMEM="8000"
- MAXCORES="8"
- ;;
- winnet*|win*2003*|windowsnet*)
- VM_OS_TYPE="winnetstandard"
- MAXMEM="4000"
- MAXCORES="8"
- ;;
- winxphome*|windowsxphome*)
- VM_OS_TYPE="winxphome"
- MAXMEM="4000"
- MAXCORES="2"
- ;;
- winxp*64|windowsxp*64)
- VM_OS_TYPE="winxppro-64"
- MAXMEM="8000"
- MAXCORES="8"
- ;;
- winxp*|windowsxp*)
- VM_OS_TYPE="winxppro"
- MAXMEM="4000"
- MAXCORES="4"
- ;;
- winvista-64)
- VM_OS_TYPE="winvista-64"
- MAXMEM="16000"
- MAXCORES="4"
- ;;
- windows7-64)
- VM_OS_TYPE="windows7-64"
- MAXMEM="32000"
- MAXCORES="8"
- ;;
- windows8-64)
- VM_OS_TYPE="windows8-64"
- MAXMEM="32000"
- MAXCORES="8"
- ;;
- windows9-64)
- VM_OS_TYPE="windows9-64"
- MAXMEM="64000"
- MAXCORES="8"
- ;;
- winvista)
- VM_OS_TYPE="winvista"
- MAXMEM="8000"
- MAXCORES="2"
- ;;
- windows7)
- VM_OS_TYPE="windows7"
- MAXMEM="8000"
- MAXCORES="4"
- ;;
- windows8)
- VM_OS_TYPE="windows8"
- MAXMEM="8000"
- MAXCORES="4"
- ;;
- windows9)
- VM_OS_TYPE="windows9"
- MAXMEM="8000"
- MAXCORES="4"
- ;;
- win*64)
- MAXMEM="16000"
- MAXCORES="4"
- ;;
- win*)
- MAXMEM="8000"
- MAXCORES="1"
- ;;
- dos|msdos*|ms-dos*)
- VM_OS_TYPE="dos"
- SHARED_FOLDERS="FALSE"
- MAXMEM="128"
- MAXCORES="1"
- ;;
- macos*64)
- VM_OS_TYPE="freebsd-64"
- MAXMEM="4000"
- MAXCORES="2"
- ;;
- macos*)
- VM_OS_TYPE="freebsd"
- MAXMEM="4000"
- MAXCORES="1"
- ;;
- beos*)
- VM_OS_TYPE="other"
- SHARED_FOLDERS="FALSE"
- ;;
- # Unknown guestOS setting in .xml - this encompasses linux too,
- # as there is a multitude of different distributions. Perhaps further
- # action will be needed if this leads to problems with exotic OSs.
- *64)
- VM_OS_TYPE="other-64"
- # SHARED_FOLDERS="FALSE"
- MAXMEM="123456"
- MAXCORES="4"
- ;;
- *)
- VM_OS_TYPE="other"
- # SHARED_FOLDERS="FALSE"
- MAXMEM="8000"
- MAXCORES="1"
- ;;
- esac
-
- declare -g CPU_CORES="${HW_THREADS:-1}"
- declare -rg HOST_CORE_COUNT="$CPU_CORES"
- [ "$CPU_CORES" -gt "$MAXCORES" ] && CPU_CORES="$MAXCORES"
-
- # It currently makes no sense to set the virtual number of cores
- # to a different value than the virtual number of cores per virtual CPU.
- declare -rg VM_CORES_PER_SOCKET="$CPU_CORES"
-
- if [ "x$SHARED_FOLDERS" != "xFALSE" ] && [ "$SHARE_REMAP_MODE" -gt 1 ]; then
- declare -rg HGFS_DISABLED="FALSE"
- else
- declare -rg HGFS_DISABLED="TRUE"
- fi
-
- [ "${VM_MEM}" -ge "${MAXMEM}" ] && VM_MEM="${MAXMEM}"
- [ "${VM_HW_VERSION}" -lt "7" -a "${VM_MEM}" -gt "3500" ] && VM_MEM="3500"
- return 0
-}
-
-## MAIN ##
-call_post_source set_vm_hardware_limits
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/init_core.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/init_core.inc
deleted file mode 100644
index d7ad77c6..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/init_core.inc
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/bash
-#######################################################################
-# Include: Declaration of core functions and variables of this plugin #
-#######################################################################
-# This core include just runs commands directly
-
-## Sanity checks for systemd-vmware_env
-# /dev/vmmon should exist, missing vmnet's does not make vmplayer crash
-if [ ! -c /dev/vmmon ]; then
- # would cause vmplayer to crash, so abort
- EXIT_TYPE="internal" EXIT_REASON="VMWare wurde nicht richtig initialisiert!" cleanexit 1
-fi
-
-# For now define helpers here, maybe use a dedicated include later on
-vmw_cap_hw_version() {
- [ -z "$1" ] && writelog "cap_hw_version called without parameter!" && return 1
- [ "$1" -lt "$maxhardwareversion" ] && maxhardwareversion="$1"
-}
-
-# Temporary disk space for logs, etc...
-declare -rg VM_REDO_DIR="/tmp/virt/vmware/${USER}.$$"
-
-# Dir for configs and vmem file
-declare -rg VM_CONF_DIR="/tmp/virt/vmware/${USER}.$$"
-
-# The VMX file of the starting VM
-declare -rg VM_RUN_FILE="${VM_CONF_DIR}/run-vmware.conf"
-
-# Users vmware config folder
-[ -z "$UID" ] && UID=$(id -u)
-[ -z "${HOME}" ] && declare -rg HOME=$(getent passwd "$UID" | awk -F ':' '{print $6}')
-[ -z "${HOME}" ] && slxlog "run-virt-vmware-home" "Could not get home directory of user $(whoami) ($UID)"
-declare -rg VM_HOME="${HOME}/.vmware"
-
-# mltk generates a vmware config file with several version infos for vmware/player, read it
-$(safesource "${VMWARE_PLUGIN_DIR}/vmware.conf")
-
-# VMware start options
-# "-X": start in fullscreen
-declare -rg VM_START_OPTIONS="-X"
-
-# create vmware directories
-mkdir -p "$VM_REDO_DIR" >/dev/null 2>&1
-mkdir -p "$VM_CONF_DIR" >/dev/null 2>&1
-mkdir -p "$VM_HOME/dndlogs" >/dev/null 2>&1
-touch "$VM_HOME/dndlogs/dndlog.conf" >/dev/null 2>&1
-
-# link to VM_RUN_FILE if VM_CONF_DIR != VM_REDO_DIR
-[ "$VM_CONF_DIR" != "$VM_REDO_DIR" ] && ln -s "$VM_RUN_FILE" "$VM_REDO_DIR/run-vmware.conf" >/dev/null 2>&1
-
-# own nvram. We need it for floppy drive b, default nvram has just drive a
-if ! cp "${VMWARE_PLUGIN_DIR}/nvram" "$VM_CONF_DIR/nvram"; then
- slxlog "virt-vmware-nvram" "Could not copy nvram from '${VMWARE_PLUGIN_DIR}/nvram' '$VM_CONF_DIR/nvram'"
-fi
-
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/log_config_summary.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/log_config_summary.inc
deleted file mode 100644
index 0c20cbcc..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/log_config_summary.inc
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/bin/bash
-##################################################
-# Include: Print vm config summary into log file #
-##################################################
-
-log_config_summary() {
- # write all results to logfile
- # log disksetup
- writelog "Directories:"
- writelog "\tConfig dir:\t\t${VM_CONF_DIR}"
- writelog "\tConfig file:\t\t${VM_RUN_FILE}"
- writelog "\tRedo dir:\t\t${VM_REDO_DIR}"
- writelog "\tVM home:\t\t${VM_HOME}"
- writelog "\tDrag n' drop log:\t${VM_HOME}/dndlogs"
- writelog "\t/tmp info:\t\t$(grep "/tmp " /proc/mounts) $(df -h | grep " /tmp$" | awk '{print $2}')"
-
- # hw setup
- writelog "Hardware:"
- writelog "\tvCPUs:\t\t\t${CPU_CORES}"
- writelog "\tVM RAM:\t\t\t${VM_MEM} MB"
- writelog "\tMAC:\t\t\t${VM_MAC_ADDR}"
- if [ -n "${network_card}" ]; then
- writelog "\tNet Adaptor:\t\t${network_card}"
- fi
-
- writelog "\tCD-ROM 1:\t\t${CDROM0}"
- writelog "\tCD-ROM 2:\t\t${CDROM1}"
- writelog "\tFloppy A:\t\t${FLOPPY0}"
- # echo nur wenn HOST_MEM_REMAINING gesetzt
- if isset HOST_MEM_REMAINING; then
- writelog "\tRemaining host RAM:\t${HOST_MEM_REMAINING} MB"
- fi
-
- # image
- writelog "Disk image:"
- writelog "\tDisk file:\t\t${VM_DISKFILE_RO}"
- if isset VM_DISKFILE_RW; then
- writelog "\tDisk mode:\t\twritable"
- writelog "\tRW-Layer:\t\t${VM_DISKFILE_RW}"
- else
- writelog "\tDisk mode:\t\tread-only"
- fi
- writelog "\tHardware version:\t${VM_HW_VERSION}"
- writelog "\tGuest OS:\t\t${VM_OS_TYPE}"
-
- # misc
- writelog "Misc:"
- writelog "\tDisplayname:\t\t${VM_DISPLAYNAME}"
- if [ "${cap3d}" = "TRUE" -a "${enable3d}" = "TRUE" ]; then
- writelog "\t3D Graphics:\tenabled"
- fi
- if [ "${HGFS_DISABLED}" = "FALSE" ]; then
- writelog "\tShared folders:\t\tdisabled"
- else
- writelog "\tShared folders:\t\tenabled."
- fi
- # empty line at end
- writelog ""
-}
-call_post_source log_config_summary
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/parse_vmx.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/parse_vmx.inc
deleted file mode 100644
index 47330bb0..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/parse_vmx.inc
+++ /dev/null
@@ -1,32 +0,0 @@
-######################################################################
-# Include: Parsing the non-legacy delivered vmxfile ${TMPCONFIG} #
-######################################################################
-## Functions
-parse_vmx() {
- # To avoid potential syntax problems from the vmx served by dmsd, sanitize
- # it before continuing with filling in the gaps
- local TMPTMPCONFIG="$(mktemp)"
- grep -E '^\s*(#|[^=]+=[^"]*"[^"]*"\s*$|[^=]+=[^"]+$|$)' "$TMPCONFIG" > "$TMPTMPCONFIG"
- if ! diff -q "$TMPCONFIG" "$TMPTMPCONFIG"; then
- # file was corrupted, log it
- writelog "'$TMPCONFIG' had bad syntax and was pruned by the post-download sanitizer!"
- slxlog -s "virt-vmware-vmx-corrupt" "Downloaded .vmx for '$IMGUUID' has a corrupted format!" "$TMPCONFIG"
- fi
- mv -f -- "$TMPTMPCONFIG" "$TMPCONFIG"
-
- writelog "Parsing virtual machine description file..."
- local -i HW_VERSION=$(grep -i -m1 '^virtualHW.version *= *' "${TMPCONFIG}" | awk -F '=' '{print $2}' | sed -r 's/[^0-9]//g')
- if notempty HW_VERSION; then
- declare -g VM_HW_VERSION="${HW_VERSION}"
- return 0
- fi
- return 1
-}
-
-## MAIN ##
-if notempty TMPCONFIG; then
- call_post_source parse_vmx
-else
- writelog "Path to VMX file is not set or empty! Aborting..."
- EXIT_TYPE="internal" EXIT_REASON="Konnte Pfad zur VMX-Datei nicht finden!" cleanexit 1
-fi
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc
deleted file mode 100644
index b41a136f..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/includes/write_final_vmx.inc
+++ /dev/null
@@ -1,301 +0,0 @@
-#!/bin/bash
-################################################
-# Include: Create final VMX configuration 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.
-replace_placeholders() {
- if [ -n "$VM_DISKFILE_RW" ]; then
- sed -i 's#%VM_DISK_PATH%#'"$VM_DISKFILE_RW"'#g' "${TMPCONFIG}"
- sed -i 's#%VM_DISK_MODE%#'"independent-persistent"'#g' "${TMPCONFIG}"
- else
- sed -i 's#%VM_DISK_PATH%#'"$VM_DISKFILE_RO"'#g' "${TMPCONFIG}"
- sed -i 's#%VM_DISK_MODE%#'"independent-nonpersistent"'#g' "${TMPCONFIG}"
- fi
- sed -i 's#%VM_DISK_REDOLOGDIR%#'"$VM_REDO_DIR"'#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.
-setup_ethernet() {
- echo 'ethernet0.addressType = "static"' >> "${TMPCONFIG}"
- echo 'ethernet0.address = "'"${VM_MAC_ADDR}"'"' >> "${TMPCONFIG}"
- if [ -n "$OTHER_NICS" ]; then
- local devtype mac cnt eth
- # Copy type of eth0, in case the others don't specify a type in the vmx, we'll use the same
- # so we know the drivers are there
- devtype=$(< "${TMPCONFIG}" grep -m1 -i '^ethernet0\.virtualDev' | sed -r 's/^[^=]+//;s/^(\s|=|")*//;s/(\s|")+$//') # TODO: Make a helper like "getVmxOption"
- cnt=0
- for mac in $OTHER_NICS; do
- vmnet=$(( cnt + 10 ))
- cnt=$(( cnt + 1 ))
- eth="ethernet${cnt}"
- # Check device exists
- if ! [ -c "/dev/vmnet${vmnet}" ]; then
- slxlog "vmware-bridge-setup" "Cannot bridge NIC into VM: /dev/vmnet${vmnet} does not exist"
- continue
- fi
- # Remove lines that could break things
- sed -i "/^${eth}\.connectionType/Id;/^${eth}\.present/Id" "${TMPCONFIG}"
- # Set up devType
- devline=
- if ! grep -q -i "^${eth}\.virtualDev" "${TMPCONFIG}" && [ -n "$devtype" ]; then
- devline="${eth}.virtualDev = "'"'"${devtype}"'"'
- fi
- cat >> "${TMPCONFIG}" <<-HEND
- ${eth}.connectionType = "custom"
- ${eth}.present = "TRUE"
- ${eth}.vnet = "vmnet${vmnet}"
- ${eth}.addressType = "static"
- ${eth}.address = "${mac}"
- ${devline}
- HEND
- done
- fi
-}
-
-# DVD, CDROM
-setup_optical_drives() {
- # XXX: For now it's safe to assume ide channel 1 is free, as we support only one HDD.
- # 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
-}
-
-setup_floppies() {
- local SLX_FLOPPY
- if isset SLX_FLOPPY_IMG; then
- SLX_FLOPPY="TRUE"
- else
- SLX_FLOPPY="FALSE"
- fi
-
- # Floppies:
- cat >> "${TMPCONFIG}" <<-HEREEND
- floppy0.present = "TRUE"
- floppy0.startConnected = "$FLOPPY0"
- floppy0.autodetect = "TRUE"
- floppy0.fileName = "auto detect"
- floppy1.present = "$SLX_FLOPPY"
- floppy1.startConnected = "TRUE"
- floppy1.fileType = "file"
- floppy1.fileName = "$SLX_FLOPPY_IMG"
- HEREEND
-}
-
-setup_serial() {
- # Serial port
- if [ -n "$SERIAL0" ]; then
- cat >> "${TMPCONFIG}" <<-HEREEND
- serial0.present = "TRUE"
- serial0.startConnected = "TRUE"
- serial0.fileType = "device"
- serial0.fileName = "$SERIAL0"
- serial0.tryNoRxLoss = "FALSE"
- serial0.autodetect = "FALSE"
- HEREEND
- fi
-
- # Parallel port
- if [ -n "$PARALLEL0" ]; then
- cat >> "${TMPCONFIG}" <<-HEREEND
- parallel0.present = "TRUE"
- parallel0.startConnected = "TRUE"
- parallel0.fileType = "device"
- parallel0.fileName = "$PARALLEL0"
- parallel0.bidirectional = "TRUE"
- parallel0.autodetect = "FALSE"
- HEREEND
- fi
-}
-
-# CPU and RAM
-setup_vcpu_ram() {
- #writelog "numvcpus = ${CPU_CORES} - maxvcpus=${HOST_CORE_COUNT}"
- cat >> "${TMPCONFIG}" <<-HEREEND
- numvcpus = "$CPU_CORES"
- cpuid.coresPerSocket = "$VM_CORES_PER_SOCKET"
- maxvcpus = "$HOST_CORE_COUNT"
- memsize = "${VM_MEM}"
- MemAllowAutoScaleDown = "FALSE"
- MemTrimRate = "-1"
- HEREEND
-}
-
-setup_usb() {
- # 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 # TODO better handling of exam mode...
- # Exam mode: Default to no USB
- sed -i '/^usb\./Id' "${TMPCONFIG}"
- echo 'usb.present = "FALSE"' >> "${TMPCONFIG}"
- else
- echo 'usb.present = "TRUE"' >> "${TMPCONFIG}"
- 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}"
-
- # 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}"
-}
-
-setup_shared_folders() {
- if ! notempty SHARED_FOLDERS HOME_SHARE_PATH HOME_SHARE_NAME COMMON_SHARE_PATH COMMON_SHARE_NAME; then
- writelog "Missing information to setup shared folders."
- return 1
- fi
-
- cat >> "${TMPCONFIG}" <<-HEREEND
- sharedFolder.option = "alwaysEnabled"
- sharedFolder0.present = "$SHARED_FOLDERS"
- sharedFolder0.enabled = "$SHARED_FOLDERS"
- sharedFolder0.expiration = "never"
- sharedFolder0.guestName = "$HOME_SHARE_NAME"
- sharedFolder0.hostPath = "$HOME_SHARE_PATH"
- sharedFolder0.readAccess = "TRUE"
- sharedFolder0.writeAccess = "TRUE"
- sharedFolder1.present = "$SHARED_FOLDERS"
- sharedFolder1.enabled = "$SHARED_FOLDERS"
- sharedFolder1.expiration = "never"
- sharedFolder1.guestName = "$COMMON_SHARE_NAME"
- sharedFolder1.hostPath = "$COMMON_SHARE_PATH"
- sharedFolder1.readAccess = "TRUE"
- sharedFolder1.writeAccess = "FALSE"
- sharedFolder.maxNum = "2"
- hgfs.mapRootShare = "TRUE"
- hgfs.linkRootShare = "TRUE"
- HEREEND
-}
-
-setup_isolation() {
- # Settings for isolation tools (drag & drop, copy & paste, etc...)
- 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.
-
-setup_graphics() {
- # Graphics, GPU: 3D will be enabled (even if vmware doesn't support the chip) if we whitelisted it.
- if isset 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|2560x1080|2560x1440|2880x1800|3200x1800|3440x1440)
- 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}"
-}
-
-finalize_hardware() {
- # Apply $maxhardwareversion to final VMX
- if notempty VM_HW_VERSION && [ "$VM_HW_VERSION" -gt "$maxhardwareversion" ]; then
- writelog "Hardware version capped to $maxhardwareversion (was $VM_HW_VERSION)"
- sed -i 's/^virtualHW\.version.*$/virtualHW.version = "'$maxhardwareversion'"/I' "${TMPCONFIG}"
- VM_HW_VERSION="$maxhardwareversion"
- fi
-
- # Enable nested virtualization if not specified in remote vmx
- if [ -e "/run/hwinfo" ] && ! grep -qi '^vhv\.enable' "${TMPCONFIG}" \
- && detect_cpu_flag "ept" "npt" \
- && [ "$VM_HW_VERSION" -ge "9" ]; then
- . "/run/hwinfo"
- [ "${HW_KVM}" = "ENABLED" ] && echo 'vhv.enable = "TRUE"' >> "${TMPCONFIG}"
- fi
-
- # Disable space check warnings
- sed -i '/^mainMem.freeSpaceCheck/Id' "${TMPCONFIG}"
- echo 'mainMem.freeSpaceCheck = "FALSE"' >> "${TMPCONFIG}"
-
- # Fix keymap fuckup when leaving VM
- sed -i '/^mks.x.resetModMap/Id' "${TMPCONFIG}"
- echo 'mks.x.resetModMap = "FALSE"' >> "${TMPCONFIG}"
-
- # TODO: Need a way to check if supported by hardware before enabling!
- #grep -qi '^vpmc\.enable' "${TMPCONFIG}" || echo 'vpmc.enable = "TRUE"' >> "${TMPCONFIG}"
-}
-
-
-## MAIN ##
-write_final_vmx() {
- replace_placeholders
- setup_ethernet
- setup_optical_drives
- setup_floppies
- setup_serial
- setup_vcpu_ram
- setup_usb
- [ "x$HGFS_DISABLED" = "xFALSE" ] && setup_shared_folders
- setup_isolation
- setup_graphics
- finalize_hardware
-
- # At last: Let's copy it to $VM_CONF_DIR/run-vmware.conf
- if cp -p "${TMPCONFIG}" "${VM_RUN_FILE}"; then
- writelog "Copied '${TMPCONFIG}' to '${VM_RUN_FILE}'"
- else
- writelog "Could not copy TMPDIR/IMGUUID -${TMPCONFIG}- to VM_RUN_FILE ${VM_RUN_FILE}!"
- # cleanexit 1 # that seems not needed!
- fi
-}
-call_post_source write_final_vmx
-
-
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/nvram b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/nvram
deleted file mode 100644
index 88074390..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/nvram
+++ /dev/null
Binary files differ
diff --git a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include b/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include
deleted file mode 100644
index e98595b7..00000000
--- a/core/modules/vmware12/data/opt/openslx/vmchooser/plugins/vmware/run-virt.include
+++ /dev/null
@@ -1,62 +0,0 @@
-# -----------------------------------------------------------------------------
-#
-# Copyright (c) 2009..2018 bwLehrpool-Projektteam
-#
-# This program/file is free software distributed under the GPL version 2.
-# See https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
-#
-# If you have any feedback please consult https://bwlehrpool.de and
-# send your feedback to bwlehrpool@hs-offenburg.de.
-#
-# General information about bwLehrpool can be found at https://bwlehrpool.de
-#
-# -----------------------------------------------------------------------------
-# run-virt.include
-# - component for vmware/player of the vmchooser plugin vmchooser-run_virt
-################################################################################
-
-# BASH_SOURCE[0] contains the file being sourced, namely this one
-declare -rg VMWARE_PLUGIN_DIR="$(dirname "${BASH_SOURCE[0]}")"
-declare -rg VMWARE_INCLUDE_DIR="${VMWARE_PLUGIN_DIR}/includes"
-
-# TODO make this part of the metadata coming from the server
-# Define which features the VMware plugin supports
-declare -rg PLUGIN_FEATURES="firewall printer usb slxfloppy sound netshares"
-
-run_plugin() {
- # declaration of default functions and variables for vmware
- $(safesource --exit "${VMWARE_INCLUDE_DIR}/init_core.inc")
-
- # get information from downloaded vmx
- $(safesource "${VMWARE_INCLUDE_DIR}/parse_vmx.inc")
-
- # determine limitations wrt RAM and CPU count of VM
- $(safesource "${VMWARE_INCLUDE_DIR}/determine_hardware_limitations.inc")
-
- # create preferences file ${HOME}/.vmware/preferences
- $(safesource "${VMWARE_INCLUDE_DIR}/create_vmhome_preferences_file.inc")
-
- # parse the given vmx file
- $(safesource "${VMWARE_INCLUDE_DIR}/write_final_vmx.inc")
-
- # print summary - needs writelog() from vmchooser-run_virt
- $(safesource "${VMWARE_INCLUDE_DIR}/log_config_summary.inc")
-
- # For debugging
- cp "$VM_RUN_FILE" "/tmp/vmware-last-config"
-
- # HACK: make the mouse disappear
- (
- local WINDOWS="$(xdotool search --sync --name '.*VMware.*Player.*')"
- isempty WINDOWS && writelog "Could not find any vmplayer windows."
- for WINDOW in $WINDOWS; do
- xdotool set_desktop_for_window $WINDOW 0 || writelog "Could not move vmplayer to desktop 0"
- xdotool windowactivate --sync $WINDOW || writelog "Could not activate vmplayer window"
- xdotool key --delay 2000 --clearmodifiers ctrl+g || writelog "Could not send ctrl+g to vmplayer window"
- done
- ) &
-
- # HACK: using the modified version of the wrapper script
- declare -rg VIRTCMD="/opt/openslx/bin/vmplayer"
- declare -rg VIRTCMDOPTS="${VM_START_OPTIONS} ${VM_RUN_FILE}"
-}
diff --git a/core/modules/vmware12/data/opt/openslx/xscreensaver/ungrab.d/vmware b/core/modules/vmware12/data/opt/openslx/xscreensaver/ungrab.d/vmware
deleted file mode 100755
index c411bfec..00000000
--- a/core/modules/vmware12/data/opt/openslx/xscreensaver/ungrab.d/vmware
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/bin/ash
-
-wfile="/run/user/$(id -u)/vmwins"
-
-if [ "$1" = "pre" ]; then
- # Find all vmware windows currently visible
- WINDOWS=$(xdotool search --onlyvisible --class vmplayer)
- [ -z "$WINDOWS" ] && exit 0
- for window in $WINDOWS; do
- xdotool windowminimize $window
- echo "$window" >> "$wfile" # Remember for later
- done
- # move mouse pointer around to avoid some problems with ghost clicks
- # also this resets the idle time durr hurr
- xdotool mousemove 0 0
- usleep 10000
- xdotool mousemove --polar 0 0
- usleep 10000
- xdotool key "ctrl+alt+shift+super"
- usleep 10000
-fi
-
-if [ "$1" = "post" ]; then
- # let's restore vmware
- WINDOWS=$(sort -u "$wfile")
- for window in $WINDOWS; do
- xdotool windowmap $window
- done
-fi
-
-exit 0
diff --git a/core/modules/vmware12/data/usr/bin/vmplayer b/core/modules/vmware12/data/usr/bin/vmplayer
deleted file mode 120000
index 2944838d..00000000
--- a/core/modules/vmware12/data/usr/bin/vmplayer
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/bin/vmplayer \ No newline at end of file
diff --git a/core/modules/vmware12/data/usr/bin/vmware b/core/modules/vmware12/data/usr/bin/vmware
deleted file mode 120000
index bde6f9c0..00000000
--- a/core/modules/vmware12/data/usr/bin/vmware
+++ /dev/null
@@ -1 +0,0 @@
-/opt/openslx/bin/vmware \ No newline at end of file
diff --git a/core/modules/vmware12/data/usr/share/icons/hicolor/index.theme b/core/modules/vmware12/data/usr/share/icons/hicolor/index.theme
deleted file mode 100644
index 5c9c50ad..00000000
--- a/core/modules/vmware12/data/usr/share/icons/hicolor/index.theme
+++ /dev/null
@@ -1,1662 +0,0 @@
-[Icon Theme]
-Name=Hicolor
-Comment=Fallback icon theme
-Hidden=true
-Directories=16x16/actions,16x16/animations,16x16/apps,16x16/categories,16x16/devices,16x16/emblems,16x16/emotes,16x16/filesystems,16x16/intl,16x16/mimetypes,16x16/places,16x16/status,16x16/stock/chart,16x16/stock/code,16x16/stock/data,16x16/stock/form,16x16/stock/image,16x16/stock/io,16x16/stock/media,16x16/stock/navigation,16x16/stock/net,16x16/stock/object,16x16/stock/table,16x16/stock/text,22x22/actions,22x22/animations,22x22/apps,22x22/categories,22x22/devices,22x22/emblems,22x22/emotes,22x22/filesystems,22x22/intl,22x22/mimetypes,22x22/places,22x22/status,22x22/stock/chart,22x22/stock/code,22x22/stock/data,22x22/stock/form,22x22/stock/image,22x22/stock/io,22x22/stock/media,22x22/stock/navigation,22x22/stock/net,22x22/stock/object,22x22/stock/table,22x22/stock/text,24x24/actions,24x24/animations,24x24/apps,24x24/categories,24x24/devices,24x24/emblems,24x24/emotes,24x24/filesystems,24x24/intl,24x24/mimetypes,24x24/places,24x24/status,24x24/stock/chart,24x24/stock/code,24x24/stock/data,24x24/stock/form,24x24/stock/image,24x24/stock/io,24x24/stock/media,24x24/stock/navigation,24x24/stock/net,24x24/stock/object,24x24/stock/table,24x24/stock/text,32x32/actions,32x32/animations,32x32/apps,32x32/categories,32x32/devices,32x32/emblems,32x32/emotes,32x32/filesystems,32x32/intl,32x32/mimetypes,32x32/places,32x32/status,32x32/stock/chart,32x32/stock/code,32x32/stock/data,32x32/stock/form,32x32/stock/image,32x32/stock/io,32x32/stock/media,32x32/stock/navigation,32x32/stock/net,32x32/stock/object,32x32/stock/table,32x32/stock/text,36x36/actions,36x36/animations,36x36/apps,36x36/categories,36x36/devices,36x36/emblems,36x36/emotes,36x36/filesystems,36x36/intl,36x36/mimetypes,36x36/places,36x36/status,36x36/stock/chart,36x36/stock/code,36x36/stock/data,36x36/stock/form,36x36/stock/image,36x36/stock/io,36x36/stock/media,36x36/stock/navigation,36x36/stock/net,36x36/stock/object,36x36/stock/table,36x36/stock/text,48x48/actions,48x48/animations,48x48/apps,48x48/categories,48x48/devices,48x48/emblems,48x48/emotes,48x48/filesystems,48x48/intl,48x48/mimetypes,48x48/places,48x48/status,48x48/stock/chart,48x48/stock/code,48x48/stock/data,48x48/stock/form,48x48/stock/image,48x48/stock/io,48x48/stock/media,48x48/stock/navigation,48x48/stock/net,48x48/stock/object,48x48/stock/table,48x48/stock/text,64x64/actions,64x64/animations,64x64/apps,64x64/categories,64x64/devices,64x64/emblems,64x64/emotes,64x64/filesystems,64x64/intl,64x64/mimetypes,64x64/places,64x64/status,64x64/stock/chart,64x64/stock/code,64x64/stock/data,64x64/stock/form,64x64/stock/image,64x64/stock/io,64x64/stock/media,64x64/stock/navigation,64x64/stock/net,64x64/stock/object,64x64/stock/table,64x64/stock/text,72x72/actions,72x72/animations,72x72/apps,72x72/categories,72x72/devices,72x72/emblems,72x72/emotes,72x72/filesystems,72x72/intl,72x72/mimetypes,72x72/places,72x72/status,72x72/stock/chart,72x72/stock/code,72x72/stock/data,72x72/stock/form,72x72/stock/image,72x72/stock/io,72x72/stock/media,72x72/stock/navigation,72x72/stock/net,72x72/stock/object,72x72/stock/table,72x72/stock/text,96x96/actions,96x96/animations,96x96/apps,96x96/categories,96x96/devices,96x96/emblems,96x96/emotes,96x96/filesystems,96x96/intl,96x96/mimetypes,96x96/places,96x96/status,96x96/stock/chart,96x96/stock/code,96x96/stock/data,96x96/stock/form,96x96/stock/image,96x96/stock/io,96x96/stock/media,96x96/stock/navigation,96x96/stock/net,96x96/stock/object,96x96/stock/table,96x96/stock/text,128x128/actions,128x128/animations,128x128/apps,128x128/categories,128x128/devices,128x128/emblems,128x128/emotes,128x128/filesystems,128x128/intl,128x128/mimetypes,128x128/places,128x128/status,128x128/stock/chart,128x128/stock/code,128x128/stock/data,128x128/stock/form,128x128/stock/image,128x128/stock/io,128x128/stock/media,128x128/stock/navigation,128x128/stock/net,128x128/stock/object,128x128/stock/table,128x128/stock/text,192x192/actions,192x192/animations,192x192/apps,192x192/categories,192x192/devices,192x192/emblems,192x192/emotes,192x192/filesystems,192x192/intl,192x192/mimetypes,192x192/places,192x192/status,192x192/stock/chart,192x192/stock/code,192x192/stock/data,192x192/stock/form,192x192/stock/image,192x192/stock/io,192x192/stock/media,192x192/stock/navigation,192x192/stock/net,192x192/stock/object,192x192/stock/table,192x192/stock/text,256x256/actions,256x256/animations,256x256/apps,256x256/categories,256x256/devices,256x256/emblems,256x256/emotes,256x256/filesystems,256x256/intl,256x256/mimetypes,256x256/places,256x256/status,256x256/stock/chart,256x256/stock/code,256x256/stock/data,256x256/stock/form,256x256/stock/image,256x256/stock/io,256x256/stock/media,256x256/stock/navigation,256x256/stock/net,256x256/stock/object,256x256/stock/table,256x256/stock/text,scalable/actions,scalable/animations,scalable/apps,scalable/categories,scalable/devices,scalable/emblems,scalable/emotes,scalable/filesystems,scalable/intl,scalable/mimetypes,scalable/places,scalable/status,scalable/stock/chart,scalable/stock/code,scalable/stock/data,scalable/stock/form,scalable/stock/image,scalable/stock/io,scalable/stock/media,scalable/stock/navigation,scalable/stock/net,scalable/stock/object,scalable/stock/table,scalable/stock/text
-
-
-[16x16/actions]
-Size=16
-Context=Actions
-Type=Threshold
-
-[16x16/animations]
-Size=16
-Context=Animations
-Type=Threshold
-
-[16x16/apps]
-Size=16
-Context=Applications
-Type=Threshold
-
-[16x16/categories]
-Size=16
-Context=Categories
-Type=Threshold
-
-[16x16/devices]
-Size=16
-Context=Devices
-Type=Threshold
-
-[16x16/emblems]
-Size=16
-Context=Emblems
-Type=Threshold
-
-[16x16/emotes]
-Size=16
-Context=Emotes
-Type=Threshold
-
-[16x16/filesystems]
-Size=16
-Context=FileSystems
-Type=Threshold
-
-[16x16/intl]
-Size=16
-Context=International
-Type=Threshold
-
-[16x16/mimetypes]
-Size=16
-Context=MimeTypes
-Type=Threshold
-
-[16x16/places]
-Size=16
-Context=Places
-Type=Threshold
-
-[16x16/status]
-Size=16
-Context=Status
-Type=Threshold
-
-[16x16/stock/chart]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/code]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/data]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/form]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/image]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/io]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/media]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/navigation]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/net]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/object]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/table]
-Size=16
-Context=Stock
-Type=Threshold
-
-[16x16/stock/text]
-Size=16
-Context=Stock
-Type=Threshold
-
-[22x22/actions]
-Size=22
-Context=Actions
-Type=Threshold
-
-[22x22/animations]
-Size=22
-Context=Animations
-Type=Threshold
-
-[22x22/apps]
-Size=22
-Context=Applications
-Type=Fixed
-
-[22x22/categories]
-Size=22
-Context=Categories
-Type=Threshold
-
-[22x22/devices]
-Size=22
-Context=Devices
-Type=Threshold
-
-[22x22/emblems]
-Size=22
-Context=Emblems
-Type=Threshold
-
-[22x22/emotes]
-Size=22
-Context=Emotes
-Type=Threshold
-
-[22x22/filesystems]
-Size=22
-Context=FileSystems
-Type=Threshold
-
-[22x22/intl]
-Size=22
-Context=International
-Type=Threshold
-
-[22x22/mimetypes]
-Size=22
-Context=MimeTypes
-Type=Threshold
-
-[22x22/places]
-Size=22
-Context=Places
-Type=Threshold
-
-[22x22/status]
-Size=22
-Context=Status
-Type=Threshold
-
-[22x22/stock/chart]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/code]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/data]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/form]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/image]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/io]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/media]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/navigation]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/net]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/object]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/table]
-Size=22
-Context=Stock
-Type=Threshold
-
-[22x22/stock/text]
-Size=22
-Context=Stock
-Type=Threshold
-
-[24x24/actions]
-Size=24
-Context=Actions
-Type=Threshold
-
-[24x24/animations]
-Size=24
-Context=Animations
-Type=Threshold
-
-[24x24/apps]
-Size=24
-Context=Applications
-Type=Threshold
-
-[24x24/categories]
-Size=24
-Context=Categories
-Type=Threshold
-
-[24x24/devices]
-Size=24
-Context=Devices
-Type=Threshold
-
-[24x24/emblems]
-Size=24
-Context=Emblems
-Type=Threshold
-
-[24x24/emotes]
-Size=24
-Context=Emotes
-Type=Threshold
-
-[24x24/filesystems]
-Size=24
-Context=FileSystems
-Type=Threshold
-
-[24x24/intl]
-Size=24
-Context=International
-Type=Threshold
-
-[24x24/mimetypes]
-Size=24
-Context=MimeTypes
-Type=Threshold
-
-[24x24/places]
-Size=24
-Context=Places
-Type=Threshold
-
-[24x24/status]
-Size=24
-Context=Status
-Type=Threshold
-
-[24x24/stock/chart]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/code]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/data]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/form]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/image]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/io]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/media]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/navigation]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/net]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/object]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/table]
-Size=24
-Context=Stock
-Type=Threshold
-
-[24x24/stock/text]
-Size=24
-Context=Stock
-Type=Threshold
-
-[32x32/actions]
-Size=32
-Context=Actions
-Type=Threshold
-
-[32x32/animations]
-Size=32
-Context=Animations
-Type=Threshold
-
-[32x32/apps]
-Size=32
-Context=Applications
-Type=Threshold
-
-[32x32/categories]
-Size=32
-Context=Categories
-Type=Threshold
-
-[32x32/devices]
-Size=32
-Context=Devices
-Type=Threshold
-
-[32x32/emblems]
-Size=32
-Context=Emblems
-Type=Threshold
-
-[32x32/emotes]
-Size=32
-Context=Emotes
-Type=Threshold
-
-[32x32/filesystems]
-Size=32
-Context=FileSystems
-Type=Threshold
-
-[32x32/intl]
-Size=32
-Context=International
-Type=Threshold
-
-[32x32/mimetypes]
-Size=32
-Context=MimeTypes
-Type=Threshold
-
-[32x32/places]
-Size=32
-Context=Places
-Type=Threshold
-
-[32x32/status]
-Size=32
-Context=Status
-Type=Threshold
-
-[32x32/stock/chart]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/code]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/data]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/form]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/image]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/io]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/media]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/navigation]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/net]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/object]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/table]
-Size=32
-Context=Stock
-Type=Threshold
-
-[32x32/stock/text]
-Size=32
-Context=Stock
-Type=Threshold
-
-[36x36/actions]
-Size=36
-Context=Actions
-Type=Threshold
-
-[36x36/animations]
-Size=36
-Context=Animations
-Type=Threshold
-
-[36x36/apps]
-Size=36
-Context=Applications
-Type=Threshold
-
-[36x36/categories]
-Size=36
-Context=Categories
-Type=Threshold
-
-[36x36/devices]
-Size=36
-Context=Devices
-Type=Threshold
-
-[36x36/emblems]
-Size=36
-Context=Emblems
-Type=Threshold
-
-[36x36/emotes]
-Size=36
-Context=Emotes
-Type=Threshold
-
-[36x36/filesystems]
-Size=36
-Context=FileSystems
-Type=Threshold
-
-[36x36/intl]
-Size=36
-Context=International
-Type=Threshold
-
-[36x36/mimetypes]
-Size=36
-Context=MimeTypes
-Type=Threshold
-
-[36x36/places]
-Size=36
-Context=Places
-Type=Threshold
-
-[36x36/status]
-Size=36
-Context=Status
-Type=Threshold
-
-[36x36/stock/chart]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/code]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/data]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/form]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/image]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/io]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/media]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/navigation]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/net]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/object]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/table]
-Size=36
-Context=Stock
-Type=Threshold
-
-[36x36/stock/text]
-Size=36
-Context=Stock
-Type=Threshold
-
-[48x48/actions]
-Size=48
-Context=Actions
-Type=Threshold
-
-[48x48/animations]
-Size=48
-Context=Animations
-Type=Threshold
-
-[48x48/apps]
-Size=48
-Context=Applications
-Type=Threshold
-
-[48x48/categories]
-Size=48
-Context=Categories
-Type=Threshold
-
-[48x48/devices]
-Size=48
-Context=Devices
-Type=Threshold
-
-[48x48/emblems]
-Size=48
-Context=Emblems
-Type=Threshold
-
-[48x48/emotes]
-Size=48
-Context=Emotes
-Type=Threshold
-
-[48x48/filesystems]
-Size=48
-Context=FileSystems
-Type=Threshold
-
-[48x48/intl]
-Size=48
-Context=International
-Type=Threshold
-
-[48x48/mimetypes]
-Size=48
-Context=MimeTypes
-Type=Threshold
-
-[48x48/places]
-Size=48
-Context=Places
-Type=Threshold
-
-[48x48/status]
-Size=48
-Context=Status
-Type=Threshold
-
-[48x48/stock/chart]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/code]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/data]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/form]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/image]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/io]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/media]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/navigation]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/net]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/object]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/table]
-Size=48
-Context=Stock
-Type=Threshold
-
-[48x48/stock/text]
-Size=48
-Context=Stock
-Type=Threshold
-
-[64x64/actions]
-Size=64
-Context=Actions
-Type=Threshold
-
-[64x64/animations]
-Size=64
-Context=Animations
-Type=Threshold
-
-[64x64/apps]
-Size=64
-Context=Applications
-Type=Threshold
-
-[64x64/categories]
-Size=64
-Context=Categories
-Type=Threshold
-
-[64x64/devices]
-Size=64
-Context=Devices
-Type=Threshold
-
-[64x64/emblems]
-Size=64
-Context=Emblems
-Type=Threshold
-
-[64x64/emotes]
-Size=64
-Context=Emotes
-Type=Threshold
-
-[64x64/filesystems]
-Size=64
-Context=FileSystems
-Type=Threshold
-
-[64x64/intl]
-Size=64
-Context=International
-Type=Threshold
-
-[64x64/mimetypes]
-Size=64
-Context=MimeTypes
-Type=Threshold
-
-[64x64/places]
-Size=64
-Context=Places
-Type=Threshold
-
-[64x64/status]
-Size=64
-Context=Status
-Type=Threshold
-
-[64x64/stock/chart]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/code]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/data]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/form]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/image]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/io]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/media]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/navigation]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/net]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/object]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/table]
-Size=64
-Context=Stock
-Type=Threshold
-
-[64x64/stock/text]
-Size=64
-Context=Stock
-Type=Threshold
-[72x72/actions]
-Size=72
-Context=Actions
-Type=Threshold
-
-[72x72/animations]
-Size=72
-Context=Animations
-Type=Threshold
-
-[72x72/apps]
-Size=72
-Context=Applications
-Type=Threshold
-
-[72x72/categories]
-Size=72
-Context=Categories
-Type=Threshold
-
-[72x72/devices]
-Size=72
-Context=Devices
-Type=Threshold
-
-[72x72/emblems]
-Size=72
-Context=Emblems
-Type=Threshold
-
-[72x72/emotes]
-Size=72
-Context=Emotes
-Type=Threshold
-
-[72x72/filesystems]
-Size=72
-Context=FileSystems
-Type=Threshold
-
-[72x72/intl]
-Size=72
-Context=International
-Type=Threshold
-
-[72x72/mimetypes]
-Size=72
-Context=MimeTypes
-Type=Threshold
-
-[72x72/places]
-Size=72
-Context=Places
-Type=Threshold
-
-[72x72/status]
-Size=72
-Context=Status
-Type=Threshold
-
-[72x72/stock/chart]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/code]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/data]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/form]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/image]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/io]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/media]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/navigation]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/net]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/object]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/table]
-Size=72
-Context=Stock
-Type=Threshold
-
-[72x72/stock/text]
-Size=72
-Context=Stock
-Type=Threshold
-
-[96x96/actions]
-Size=96
-Context=Actions
-Type=Threshold
-
-[96x96/animations]
-Size=96
-Context=Animations
-Type=Threshold
-
-[96x96/apps]
-Size=96
-Context=Applications
-Type=Threshold
-
-[96x96/categories]
-Size=96
-Context=Categories
-Type=Threshold
-
-[96x96/devices]
-Size=96
-Context=Devices
-Type=Threshold
-
-[96x96/emblems]
-Size=96
-Context=Emblems
-Type=Threshold
-
-[96x96/emotes]
-Size=96
-Context=Emotes
-Type=Threshold
-
-[96x96/filesystems]
-Size=96
-Context=FileSystems
-Type=Threshold
-
-[96x96/intl]
-Size=96
-Context=International
-Type=Threshold
-
-[96x96/mimetypes]
-Size=96
-Context=MimeTypes
-Type=Threshold
-
-[96x96/places]
-Size=96
-Context=Places
-Type=Threshold
-
-[96x96/status]
-Size=96
-Context=Status
-Type=Threshold
-
-[96x96/stock/chart]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/code]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/data]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/form]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/image]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/io]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/media]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/navigation]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/net]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/object]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/table]
-Size=96
-Context=Stock
-Type=Threshold
-
-[96x96/stock/text]
-Size=96
-Context=Stock
-Type=Threshold
-
-[128x128/actions]
-Size=128
-Context=Actions
-Type=Threshold
-
-[128x128/animations]
-Size=128
-Context=Animations
-Type=Threshold
-
-[128x128/apps]
-Size=128
-Context=Applications
-Type=Threshold
-
-[128x128/categories]
-Size=128
-Context=Categories
-Type=Threshold
-
-[128x128/devices]
-Size=128
-Context=Devices
-Type=Threshold
-
-[128x128/emblems]
-Size=128
-Context=Emblems
-Type=Threshold
-
-[128x128/emotes]
-Size=128
-Context=Emotes
-Type=Threshold
-
-[128x128/filesystems]
-Size=128
-Context=FileSystems
-Type=Threshold
-
-[128x128/intl]
-Size=128
-Context=International
-Type=Threshold
-
-[128x128/mimetypes]
-Size=128
-Context=MimeTypes
-Type=Threshold
-
-[128x128/places]
-Size=128
-Context=Places
-Type=Threshold
-
-[128x128/status]
-Size=128
-Context=Status
-Type=Threshold
-
-[128x128/stock/chart]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/code]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/data]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/form]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/image]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/io]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/media]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/navigation]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/net]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/object]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/table]
-Size=128
-Context=Stock
-Type=Threshold
-
-[128x128/stock/text]
-Size=128
-Context=Stock
-Type=Threshold
-
-[192x192/actions]
-Size=192
-Context=Actions
-Type=Threshold
-
-[192x192/animations]
-Size=192
-Context=Animations
-Type=Threshold
-
-[192x192/apps]
-Size=192
-Context=Applications
-Type=Threshold
-
-[192x192/categories]
-Size=192
-Context=Categories
-Type=Threshold
-
-[192x192/devices]
-Size=192
-Context=Devices
-Type=Threshold
-
-[192x192/emblems]
-Size=192
-Context=Emblems
-Type=Threshold
-
-[192x192/emotes]
-Size=192
-Context=Emotes
-Type=Threshold
-
-[192x192/filesystems]
-Size=192
-Context=FileSystems
-Type=Threshold
-
-[192x192/intl]
-Size=192
-Context=International
-Type=Threshold
-
-[192x192/mimetypes]
-Size=192
-Context=MimeTypes
-Type=Threshold
-
-[192x192/places]
-Size=192
-Context=Places
-Type=Threshold
-
-[192x192/status]
-Size=192
-Context=Status
-Type=Threshold
-
-[192x192/stock/chart]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/code]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/data]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/form]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/image]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/io]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/media]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/navigation]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/net]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/object]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/table]
-Size=192
-Context=Stock
-Type=Threshold
-
-[192x192/stock/text]
-Size=192
-Context=Stock
-Type=Threshold
-
-[256x256/actions]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Actions
-Type=Scalable
-
-[256x256/animations]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Animations
-Type=Scalable
-
-[256x256/apps]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Applications
-Type=Scalable
-
-[256x256/categories]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Categories
-Type=Scalable
-
-[256x256/devices]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Devices
-Type=Scalable
-
-[256x256/emblems]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Emblems
-Type=Scalable
-
-[256x256/emotes]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Emotes
-Type=Scalable
-
-[256x256/filesystems]
-MinSize=64
-Size=256
-MaxSize=256
-Context=FileSystems
-Type=Scalable
-
-[256x256/intl]
-MinSize=64
-Size=256
-MaxSize=256
-Context=International
-Type=Scalable
-
-[256x256/mimetypes]
-MinSize=64
-Size=256
-MaxSize=256
-Context=MimeTypes
-Type=Scalable
-
-[256x256/places]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Places
-Type=Scalable
-
-[256x256/status]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Status
-Type=Scalable
-
-[256x256/stock/chart]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/code]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/data]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/form]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/image]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/io]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/media]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/navigation]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/net]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/object]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/table]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[256x256/stock/text]
-MinSize=64
-Size=256
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/actions]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Actions
-Type=Scalable
-
-[scalable/animations]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Animations
-Type=Scalable
-
-[scalable/apps]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Applications
-Type=Scalable
-
-[scalable/categories]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Categories
-Type=Scalable
-
-[scalable/devices]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Devices
-Type=Scalable
-
-[scalable/emblems]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Emblems
-Type=Scalable
-
-[scalable/emotes]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Emotes
-Type=Scalable
-
-[scalable/filesystems]
-MinSize=1
-Size=128
-MaxSize=256
-Context=FileSystems
-Type=Scalable
-
-[scalable/intl]
-MinSize=1
-Size=128
-MaxSize=256
-Context=International
-Type=Scalable
-
-[scalable/mimetypes]
-MinSize=1
-Size=128
-MaxSize=256
-Context=MimeTypes
-Type=Scalable
-
-[scalable/places]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Places
-Type=Scalable
-
-[scalable/status]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Status
-Type=Scalable
-
-[scalable/stock/chart]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/code]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/data]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/form]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/image]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/io]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/media]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/navigation]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/net]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/object]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/table]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
-[scalable/stock/text]
-MinSize=1
-Size=128
-MaxSize=256
-Context=Stock
-Type=Scalable
-
diff --git a/core/modules/vmware12/module.conf b/core/modules/vmware12/module.conf
index 37ec1f62..b3ab5260 100644
--- a/core/modules/vmware12/module.conf
+++ b/core/modules/vmware12/module.conf
@@ -1,7 +1,7 @@
#!/bin/bash
REQUIRED_VERSION="12.5.9"
REQUIRED_TYPE="workstation"
-REQUIRED_MODULES="kernel"
+REQUIRED_MODULES="kernel vmware-common"
REQUIRED_DIRECTORIES="
/etc/vmware
/usr/sbin