summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--helper/system.inc2
-rw-r--r--remote/modules/vmplayer/vmplayer.conf5
-rwxr-xr-xremote/modules/vmware/data/addon-init (renamed from remote/modules/vmplayer/data/addon-init)0
l---------remote/modules/vmware/data/etc/systemd/system/graphical.target.wants/vmware.service (renamed from remote/modules/vmplayer/data/etc/systemd/system/graphical.target.wants/vmware.service)0
-rw-r--r--remote/modules/vmware/data/etc/systemd/system/vmware.service (renamed from remote/modules/vmplayer/data/etc/systemd/system/vmware.service)0
-rw-r--r--remote/modules/vmware/data/etc/vmware/config (renamed from remote/modules/vmplayer/data/etc/vmware/config)0
-rwxr-xr-xremote/modules/vmware/data/opt/openslx/bin/vmplayer (renamed from remote/modules/vmplayer/data/opt/openslx/bin/vmplayer)0
-rwxr-xr-xremote/modules/vmware/data/opt/openslx/bin/vmware (renamed from remote/modules/vmplayer/data/opt/openslx/bin/vmware)0
-rw-r--r--remote/modules/vmware/data/opt/openslx/etc/vmware/nvram (renamed from remote/modules/vmplayer/data/opt/openslx/etc/vmware/nvram)bin8664 -> 8664 bytes
-rwxr-xr-xremote/modules/vmware/data/opt/openslx/etc/vmware/run-virt.include (renamed from remote/modules/vmplayer/data/opt/openslx/etc/vmware/run-virt.include)0
-rw-r--r--remote/modules/vmware/data/opt/openslx/etc/vmware/vmware.conf (renamed from remote/modules/vmplayer/data/opt/openslx/etc/vmware/vmware.conf)0
-rwxr-xr-xremote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env (renamed from remote/modules/vmplayer/data/opt/openslx/scripts/systemd-vmware_env)0
-rw-r--r--remote/modules/vmware/data/usr/share/icons/hicolor/index.theme (renamed from remote/modules/vmplayer/data/usr/share/icons/hicolor/index.theme)0
-rw-r--r--remote/modules/vmware/vmplayer.build (renamed from remote/modules/vmplayer/vmplayer.build)79
-rw-r--r--remote/modules/vmware/vmplayer.conf4
-rwxr-xr-xremote/setup_target5
l---------remote/targets/vmware/vmplayer1
l---------remote/targets/vmware/vmware1
18 files changed, 54 insertions, 43 deletions
diff --git a/helper/system.inc b/helper/system.inc
index defa5c98..806799ad 100644
--- a/helper/system.inc
+++ b/helper/system.inc
@@ -31,10 +31,12 @@ if [ "$(uname -m)x" = "x86_64x" ]; then
AMD64_I386=amd64
X86_64_I586=x86_64
AMD64_X86=amd64
+ ARCHREGEX="(amd64|x86[_-]64)"
else
LIB64="lib"
AMD64_I386=i386
X86_64_I586=i586
AMD64_X86=x86
+ ARCHREGEX="(i[3456]86|x86[_-]32)"
fi
diff --git a/remote/modules/vmplayer/vmplayer.conf b/remote/modules/vmplayer/vmplayer.conf
deleted file mode 100644
index 2797303e..00000000
--- a/remote/modules/vmplayer/vmplayer.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-#REQUIRED_INSTALLED_PACKAGES="libgconf-2-4 fontconfig-config"
-#REQUIRED_CONTENT_PACKAGES="libgconf-2-4 fontconfig-config"
-REQUIRED_BINARIES=""
-REQUIRED_SYSTEM_FILES=""
-REQUIRED_DIRECTORIES="/etc /usr"
diff --git a/remote/modules/vmplayer/data/addon-init b/remote/modules/vmware/data/addon-init
index 01acb3b4..01acb3b4 100755
--- a/remote/modules/vmplayer/data/addon-init
+++ b/remote/modules/vmware/data/addon-init
diff --git a/remote/modules/vmplayer/data/etc/systemd/system/graphical.target.wants/vmware.service b/remote/modules/vmware/data/etc/systemd/system/graphical.target.wants/vmware.service
index 7deb4820..7deb4820 120000
--- a/remote/modules/vmplayer/data/etc/systemd/system/graphical.target.wants/vmware.service
+++ b/remote/modules/vmware/data/etc/systemd/system/graphical.target.wants/vmware.service
diff --git a/remote/modules/vmplayer/data/etc/systemd/system/vmware.service b/remote/modules/vmware/data/etc/systemd/system/vmware.service
index 30bb42ff..30bb42ff 100644
--- a/remote/modules/vmplayer/data/etc/systemd/system/vmware.service
+++ b/remote/modules/vmware/data/etc/systemd/system/vmware.service
diff --git a/remote/modules/vmplayer/data/etc/vmware/config b/remote/modules/vmware/data/etc/vmware/config
index eb5d01c0..eb5d01c0 100644
--- a/remote/modules/vmplayer/data/etc/vmware/config
+++ b/remote/modules/vmware/data/etc/vmware/config
diff --git a/remote/modules/vmplayer/data/opt/openslx/bin/vmplayer b/remote/modules/vmware/data/opt/openslx/bin/vmplayer
index 147f514f..147f514f 100755
--- a/remote/modules/vmplayer/data/opt/openslx/bin/vmplayer
+++ b/remote/modules/vmware/data/opt/openslx/bin/vmplayer
diff --git a/remote/modules/vmplayer/data/opt/openslx/bin/vmware b/remote/modules/vmware/data/opt/openslx/bin/vmware
index 1fe9b11d..1fe9b11d 100755
--- a/remote/modules/vmplayer/data/opt/openslx/bin/vmware
+++ b/remote/modules/vmware/data/opt/openslx/bin/vmware
diff --git a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/nvram b/remote/modules/vmware/data/opt/openslx/etc/vmware/nvram
index 85125f1e..85125f1e 100644
--- a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/nvram
+++ b/remote/modules/vmware/data/opt/openslx/etc/vmware/nvram
Binary files differ
diff --git a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/run-virt.include b/remote/modules/vmware/data/opt/openslx/etc/vmware/run-virt.include
index e60d5a5b..e60d5a5b 100755
--- a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/run-virt.include
+++ b/remote/modules/vmware/data/opt/openslx/etc/vmware/run-virt.include
diff --git a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/vmware.conf b/remote/modules/vmware/data/opt/openslx/etc/vmware/vmware.conf
index 210b814f..210b814f 100644
--- a/remote/modules/vmplayer/data/opt/openslx/etc/vmware/vmware.conf
+++ b/remote/modules/vmware/data/opt/openslx/etc/vmware/vmware.conf
diff --git a/remote/modules/vmplayer/data/opt/openslx/scripts/systemd-vmware_env b/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env
index 4103eae6..4103eae6 100755
--- a/remote/modules/vmplayer/data/opt/openslx/scripts/systemd-vmware_env
+++ b/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env
diff --git a/remote/modules/vmplayer/data/usr/share/icons/hicolor/index.theme b/remote/modules/vmware/data/usr/share/icons/hicolor/index.theme
index 5c9c50ad..5c9c50ad 100644
--- a/remote/modules/vmplayer/data/usr/share/icons/hicolor/index.theme
+++ b/remote/modules/vmware/data/usr/share/icons/hicolor/index.theme
diff --git a/remote/modules/vmplayer/vmplayer.build b/remote/modules/vmware/vmplayer.build
index 89e3f87b..85929c17 100644
--- a/remote/modules/vmplayer/vmplayer.build
+++ b/remote/modules/vmware/vmplayer.build
@@ -1,34 +1,46 @@
fetch_source() {
- #mount vmware bundle directory
- [ ! -d /mnt/store ] && mkdir -p /mnt/store
- if [ "x$(ls /mnt/store/vmware/*.bundle)" == "x" ]; then
- mount -t nfs -o ro,async,nolock 132.230.8.113:/srv/vmext /mnt/store || perror "Could not mount vmware bundle directory. Exiting."
- fi
- ARCH="$(uname -m)"
- [ "$ARCH" = "i686" ] && ARCH=i386
- local BUNDLE="$(find /mnt/store/vmware -type f -name "VMware-Player*.${ARCH}.bundle" | head -1)"
- [ -z "$BUNDLE" ] && perror "Could not find vmplayer at /mnt/store for ARCH = $ARCH"
[ -e "./src" ] && { rm -r ./src || perror "Could not delete old src dir."; }
- pinfo "Extracting bundle"
- $BUNDLE -x ./src/ || perror "Extracting the vmplayer bundle failed."
+ mkdir -p "./src" || perror "Could not mkdir src"
+ cd "./src" || perror "cd fail."
+ # Get directory listing
+ wget -O "index.html" "$REQUIRED_DOWNLOAD_BASE" || perror "Could not download vmware dir index"
+ # # Try to treat it as version listing
+ # local LATEST=$(grep -o -E '"[0-9]+\.[0-9]+\.[0-9]+/' "index.html" | cut -c 2- | sort --version-sort | tail -n 1)
+ # if [ -n "$LATEST" ]; then
+ # REQUIRED_DOWNLOAD_BASE+="$LATEST"
+ # # Determine latest build
+ # fi
+ local FILE=$(grep -E -o -i "href=\"VMware-$REQUIRED_TYPE-[^\"]+[\._\-]$ARCHREGEX[\._\-][^\"]+\"" "index.html" | head -n 1 | awk -F '"' '{printf $2}')
+ [ -z "$FILE" ] && perror "Could not determine vmware $REQUIRED_TYPE bundle file for current arch from $MODULE_DIR/src/index.html"
+ # Download file
+ wget -O "$FILE" "$REQUIRED_DOWNLOAD_BASE/$FILE" || perror "Could not download $FILE from $REQUIRED_DOWNLOAD_BASE"
+ if [[ "$FILE" == *.tar ]]; then
+ tar -x "${FILE%.tar}" -f "$FILE" || perror "Could not untar downloaded $FILE"
+ unlink "$FILE"
+ FILE="${FILE%.tar}"
+ fi
+ pinfo "Extracting bundle of VMware $(echo "$FILE" | grep -o -E '[0-9]+\.[0-9]+\.[0-9]+') build $(echo "$FILE" | grep -o -E '[0-9]{7,9}') for $(echo "$FILE" | grep -o -E "$ARCHREGEX")"
+ ./$FILE -x "./bundle/" || perror "Extracting the vmware bundle failed."
pinfo "done"
}
build() {
- [ ! -d "./src/vmware-player" ] && perror "Extracted vmplayer bundle not found in ./src - please clean vmplayer module."
+ local SRCDIR="./src/bundle"
+ [ ! -d "$SRCDIR" ] && perror "Extracted vmplayer bundle not found in $SRCDIR - please clean vmplayer module."
local TARGET="$MODULE_BUILD_DIR/usr/lib/vmware/"
mkdir -p "$TARGET"{lib,share,bin}
pinfo "Copying data to build dir"
- cp -r ./src/vmware-installer/lib/lib* "$TARGET" || perror "Could not copy libs from vmware-installer"
- cp -r ./src/vmware-network-editor/lib "$MODULE_BUILD_DIR/usr/" || perror "Could not copy libs from vmware-network-config"
- cp -r ./src/vmware-player/lib/share "$TARGET" || perror "Could not copy lib/share from vmware-player"
- cp -r ./src/vmware-player/share "$MODULE_BUILD_DIR/usr/" || perror "C0oudld not copy share from vmware-player"
- cp -r ./src/vmware-player-app/etc "$MODULE_BUILD_DIR/" || perror "Could not copy bin and etc from vmware-player-app."
- cp -r ./src/vmware-player-app/lib/* "$TARGET" || perror "Could not copy lib subtree from vmware-player-app."
- cp -r ./src/vmware-player-app/{bin,share} "$MODULE_BUILD_DIR/usr/" || perror "could not copy share from vmware-player-app."
- cp -r ./src/vmware-usbarbitrator/bin "$MODULE_BUILD_DIR/usr/" || perror "Could not copy bin from vmware-usbarbitrator."
- cp -r ./src/vmware-vmx/{bin,etc,sbin} "$MODULE_BUILD_DIR/usr/" || perror "could not copy bin,etc,sbin to usr for vmare-vmx."
- cp -r ./src/vmware-vmx/lib/{bin,icu,lib,libconf,scripts} "$TARGET" || perror "Could not copy many things from vmware-vmx."
+ cp -r ./$SRCDIR/vmware-installer/lib/lib* "$TARGET" || perror "Could not copy libs from vmware-installer"
+ cp -r ./$SRCDIR/vmware-network-editor/lib "$MODULE_BUILD_DIR/usr/" || perror "Could not copy libs from vmware-network-config"
+ cp -r ./$SRCDIR/vmware-$REQUIRED_TYPE/lib/share "$TARGET" || perror "Could not copy lib/share from vmware-player"
+ cp -r ./$SRCDIR/vmware-$REQUIRED_TYPE/share "$MODULE_BUILD_DIR/usr/" || perror "C0oudld not copy share from vmware-player"
+ cp -r ./$SRCDIR/vmware-player-app/etc "$MODULE_BUILD_DIR/" || perror "Could not copy bin and etc from vmware-player-app."
+ cp -r ./$SRCDIR/vmware-player-app/lib/* "$TARGET" || perror "Could not copy lib subtree from vmware-player-app."
+ cp -r ./$SRCDIR/vmware-player-app/{bin,share} "$MODULE_BUILD_DIR/usr/" || perror "could not copy share from vmware-player-app."
+ cp -r ./$SRCDIR/vmware-usbarbitrator/bin "$MODULE_BUILD_DIR/usr/" || perror "Could not copy bin from vmware-usbarbitrator."
+ cp -r ./$SRCDIR/vmware-vmx/{bin,etc,sbin} "$MODULE_BUILD_DIR/usr/" || perror "could not copy bin,etc,sbin to usr for vmare-vmx."
+ cp -r ./$SRCDIR/vmware-vmx/lib/{bin,icu,lib,libconf,scripts} "$TARGET" || perror "Could not copy many things from vmware-vmx."
+ [ -d "./$SRCDIR/vmware-workstation-server" ] && cp -r ./$SRCDIR/vmware-workstation-server/{bin,lib} "$TARGET" || perror "Could not copy many things from vmware-workstation-server."
[ ! -L "$TARGET/bin/vmplayer" ] && { ln -s /usr/lib/vmware/bin/appLoader "$TARGET/bin/vmplayer" || perror "Could not link vmplayer to appLoader."; }
chmod +x "$TARGET"/bin/*
chmod u+s "$TARGET"/bin/vmware-vmx* || perror "Error setting suid-bit on vmware-vmx*"
@@ -45,14 +57,7 @@ build() {
for file in $(grep -rl "@@LIBCONF_DIR@@" "$MODULE_BUILD_DIR"); do
sed -i 's#@@LIBCONF_DIR@@#/usr/lib/vmware/libconf#g' "$file"
done
-
- # REMOVED: libgconf stuff was an old hackfix? seems not needed anymore
- # Extract libgconf-2 stuff
- #COPYLIST="list_dpkg_output"
- #[ -e "${COPYLIST}" ] && rm "${COPYLIST}"
- #list_packet_files >> "${COPYLIST}"
- #tarcopy "$(cat "${COPYLIST}" | sort -u)" "${MODULE_BUILD_DIR}"
# Compile kernel modules
pinfo "Compiling required kernel modules."
# build modules
@@ -73,13 +78,13 @@ post_copy() {
build_modules() {
# need to be in src
cd "$MODULE_DIR/src" || perror "Could not cd to '$MODULE_DIR/src'"
- local VMWARE_MODCONFIG="$MODULE_DIR/src/vmware-vmx/bin/vmware-modconfig"
+ local VMWARE_MODCONFIG="$MODULE_DIR/$SRCDIR/vmware-vmx/bin/vmware-modconfig"
[ -e "$VMWARE_MODCONFIG" ] && chmod +x "$VMWARE_MODCONFIG" || perror "Could not find $VMWARE_MODCONFIG"
# link vmware-modconfig-console in the build dir
- local MANIFEST="$MODULE_DIR/src/vmware-vmx/manifest.xml"
+ local MANIFEST="$MODULE_DIR/$SRCDIR/vmware-vmx/manifest.xml"
local BUILD_NUMBER="$(grep -o -E '<buildNumber>[0-9]*</buildNumber>' "$MANIFEST"|grep -o -E '[0-9]*')"
- local VERSION="$(grep -o -E '<version>[0-9.]*</version>' "$MANIFEST"|grep -o -E '[0-9.]*')"
- local CORE_VERSION="$(grep -o -E '<coreVersion>[0-9.]*</coreVersion>' "$MANIFEST"|grep -o -E '[0-9.]*')"
+ local VERSION="$(grep -o -E '<version>[0-9\.]*</version>' "$MANIFEST"|grep -o -E '[0-9\.]*')"
+ local CORE_VERSION="$(grep -o -E '<coreVersion>[0-9\.]*</coreVersion>' "$MANIFEST"|grep -o -E '[0-9\.]*')"
# /etc/vmware/config gen
sed -i.bak1 '/^ETCDIR/d;/^VMISETCDIR/d;/bootstrap/d' "$VMWARE_MODCONFIG"
@@ -112,13 +117,13 @@ product.buildNumber = "$BUILD_NUMBER"
authd.client.port = "902"
authd.proxy.nfc = "vmware-hostd:ha-nfc"
authd.soapserver = "TRUE"
-product.version = "9.0.1"
-workstation.product.version = "9.0.1"
+product.version = "$VERSION"
+workstation.product.version = "$VERSION"
product.name = "VMware Workstation"
EOF
mkdir -p "$MODULE_BUILD_DIR/usr/lib/vmware/modules"
- ln -sf "$MODULE_DIR/src/vmware-vmx/extra/modules.xml" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/"
- ln -sf "$MODULE_DIR/src/vmware-vmx/lib/modules/source" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/"
+ ln -sf "$MODULE_DIR/$SRCDIR/vmware-vmx/extra/modules.xml" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/"
+ ln -sf "$MODULE_DIR/$SRCDIR/vmware-vmx/lib/modules/source" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/"
ln -sf "appLoader" "$MODULE_BUILD_DIR/usr/lib/vmware/bin/vmware-modconfig"
ln -sf "appLoader" "$MODULE_BUILD_DIR/usr/lib/vmware/bin/vmware-modconfig-console"
diff --git a/remote/modules/vmware/vmplayer.conf b/remote/modules/vmware/vmplayer.conf
new file mode 100644
index 00000000..11b7ca71
--- /dev/null
+++ b/remote/modules/vmware/vmplayer.conf
@@ -0,0 +1,4 @@
+REQUIRED_DIRECTORIES="/etc /usr"
+REQUIRED_DOWNLOAD_BASE="http://softwareupdate.vmware.com/cds/vmw-desktop/ws/10.0.0/1295980/linux/core/"
+REQUIRED_TYPE="workstation"
+
diff --git a/remote/setup_target b/remote/setup_target
index dc8bd151..86da6d4c 100755
--- a/remote/setup_target
+++ b/remote/setup_target
@@ -322,6 +322,7 @@ process_module() {
pinfo "## Reading build"
read_build
pinfo "## Installing dependencies"
+ cd "${MODULE_DIR}" || perror "cd to '${MODULE_DIR}' failed."
install_dependencies
pinfo "## Fetching source"
[ -e "${MODULE_DIR}/.fetched_source" ] || { fetch_source && touch "${MODULE_DIR}/.fetched_source"; }
@@ -330,6 +331,7 @@ process_module() {
else
pinfo "## Building"
mkdir -p "${MODULE_BUILD_DIR}" || perror "Could not create build dir"
+ cd "${MODULE_DIR}" || perror "cd to '${MODULE_DIR}' failed."
build # calls perror if something fails, no need to do that here
touch "${MODULE_DIR}/.built" || pwarning "Error setting built-flag"
fi
@@ -337,12 +339,15 @@ process_module() {
[ -d "${MODULE_BUILD_DIR}" ] && find "${MODULE_BUILD_DIR}" -name '*.la' -exec rm -f {} \;
[ -d "${TARGET_BUILD_DIR}" ] && TARGET_BUILD_SIZE=$(du -bc "${TARGET_BUILD_DIR}" | awk 'END {print $1}') || TARGET_BUILD_SIZE=0
pinfo "## Copying files with dependencies"
+ cd "${MODULE_DIR}" || perror "cd to '${MODULE_DIR}' failed."
copy_files_with_deps
pinfo "## Copying required system files" # REQUIRED_SYSTEM_FILES
+ cd "${MODULE_DIR}" || perror "cd to '${MODULE_DIR}' failed."
copy_system_files
pinfo "## Copying static module files"
copy_static_data
pinfo "## Post copy"
+ cd "${MODULE_DIR}" || perror "cd to '${MODULE_DIR}' failed."
post_copy
# Sanity checks
[ -e "$TARGET_BUILD_DIR/var/run" -a ! -L "$TARGET_BUILD_DIR/var/run" ] && perror "Messup datected: $TARGET_BUILD_DIR/var/run exists and is not a symlink!"
diff --git a/remote/targets/vmware/vmplayer b/remote/targets/vmware/vmplayer
deleted file mode 120000
index 9303aa6a..00000000
--- a/remote/targets/vmware/vmplayer
+++ /dev/null
@@ -1 +0,0 @@
-../../modules/vmplayer \ No newline at end of file
diff --git a/remote/targets/vmware/vmware b/remote/targets/vmware/vmware
new file mode 120000
index 00000000..81fa2c91
--- /dev/null
+++ b/remote/targets/vmware/vmware
@@ -0,0 +1 @@
+../../modules/vmware \ No newline at end of file