summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author Erich Ritz2024-04-25 11:48:16 +0200
committer Willy Sudiarto Raharjo2024-04-25 17:19:07 +0200
commitd1e0a8bdcaac3839648be70e1cc9eba954538429 (patch)
tree03dd8a699e57fb1d81de6913d40ce2fb6afccbd7
parent4027579d602312017971a8393afac07578ea03ee (diff)
downloadslackbuilds-d1e0a8bdcaac3839648be70e1cc9eba954538429.tar.gz
network/vmware-horizon-client: Updated for version 2312.1_8.12.1_23543969.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--network/vmware-horizon-client/README33
-rw-r--r--network/vmware-horizon-client/doinst.sh26
-rw-r--r--network/vmware-horizon-client/douninst.sh3
-rw-r--r--network/vmware-horizon-client/slack-desc12
-rw-r--r--network/vmware-horizon-client/vmware-bundle.eclass84
-rw-r--r--network/vmware-horizon-client/vmware-horizon-client.SlackBuild186
-rw-r--r--network/vmware-horizon-client/vmware-horizon-client.info16
7 files changed, 116 insertions, 244 deletions
diff --git a/network/vmware-horizon-client/README b/network/vmware-horizon-client/README
index 5548d422ea..abbfbef819 100644
--- a/network/vmware-horizon-client/README
+++ b/network/vmware-horizon-client/README
@@ -1,31 +1,6 @@
-The VMware Horizon Client for Linux, allowing you to use your
+The VMware Horizon Client for Linux allows you to use your
Slackware box as a thin client and lets you connect to your company's
-Virtual Desktop Infrastructure using the proprietary VMware View 6
-PCoIP protocol.
+Virtual Desktop Infrastructure using the proprietary VMware View
+protocol.
-*ATTENTION*: This build script installs binary, proprietary
-software. Only use it if you need the proprietary parts and you are
-OK with installing and using proprietary software. By installing
-this SlackBuild you agree to the EULA you'll find installed in
-/usr/doc/vmware-horizon-client-4.3.0/. If you do not agree, uninstall
-the package.
-
-This SlackBuild installs multiple components. At the moment only the
-PCoIP and the Smart Card component seem to work. USB redirection and
-Virtual Printing won't work.
-
-To deactivate one of the working components, use the installation
-options
-
-PCOIP="NO"
-
-and
-
-SMARTCRD="NO"
-
-You could try to activate USB support by setting USB="YES". But there
-will be a problem with libcrypto. If you find a fix, please email me.
-
-This application is a 32bit application. It won't work on a
-Slackware64 system without multilib capability. But it has been tested
-and works with a multilib setup.
+This build script installs the Debian binary package.
diff --git a/network/vmware-horizon-client/doinst.sh b/network/vmware-horizon-client/doinst.sh
new file mode 100644
index 0000000000..4e7bf288e1
--- /dev/null
+++ b/network/vmware-horizon-client/doinst.sh
@@ -0,0 +1,26 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if ! /etc/init.d/ftscanhv start > /dev/null 2>&1; then
+ echo "Warning: The daemon for Scanner redirection fails to start!"
+fi
+if ! /etc/init.d/ftsprhv start > /dev/null 2>&1; then
+ echo "Warning: The daemon for SerialPort redirection fails to start!"
+fi
+
+if [ -x /usr/lib64/vmware/view/integratedPrinting/integrated-printing-setup.sh ]; then
+ /usr/lib64/vmware/view/integratedPrinting/integrated-printing-setup.sh -i || true
+fi
+
+if ! /etc/init.d/vmware-USBArbitrator start; then
+ echo "Warning: The daemon for USB redirection fails to start!"
+fi
+
+python3 /usr/lib64/vmware/view/urlRedirection/install-url-redirection.py -i || true
+
+sed -i '1i127.0.0.1 view-localhost' /etc/hosts
+
+if ! udevadm control --reload-rules || ! udevadm trigger; then
+ echo "Warning: Error reloading udev HID rules, failed to configure HID devices!"
+fi
diff --git a/network/vmware-horizon-client/douninst.sh b/network/vmware-horizon-client/douninst.sh
new file mode 100644
index 0000000000..fea504ccb8
--- /dev/null
+++ b/network/vmware-horizon-client/douninst.sh
@@ -0,0 +1,3 @@
+rm /usr/bin/prlinuxcupsppd
+rm /usr/lib64/cupsPPD/prlinuxcupsppd
+rmdir --ignore-fail-on-non-empty /usr/lib64/cupsPPD
diff --git a/network/vmware-horizon-client/slack-desc b/network/vmware-horizon-client/slack-desc
index 9d4818d909..e663a105f6 100644
--- a/network/vmware-horizon-client/slack-desc
+++ b/network/vmware-horizon-client/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-vmware-horizon-client: vmware-horizon-client (VMWare Horizon Client with PCoIP support)
+vmware-horizon-client: vmware-horizon-client (VMWare Horizon Client)
vmware-horizon-client:
-vmware-horizon-client: The VMware Horizon Client for Linux, optimised for VMware horizon 6,
-vmware-horizon-client: allowing you to use your Slackware box as a thin client and connects
-vmware-horizon-client: you to your company's Virtual Desktop Infrastructure, even if they
-vmware-horizon-client: use the proprietary VMware Horizon 6 PCoIP protocol.
-vmware-horizon-client: Only use this package if you need the proprietary parts.
+vmware-horizon-client: The VMware Horizon Client for Linux allows you to use your Slackware
+vmware-horizon-client: box as a thin client and connects you to your company's Virtual
+vmware-horizon-client: Desktop Infrastructure, even if they use the proprietary VMware
+vmware-horizon-client: Horizon protocol.
vmware-horizon-client:
+vmware-horizon-client: Homepage: https:/www.vmware.com
vmware-horizon-client:
vmware-horizon-client:
vmware-horizon-client:
diff --git a/network/vmware-horizon-client/vmware-bundle.eclass b/network/vmware-horizon-client/vmware-bundle.eclass
deleted file mode 100644
index 261b6e1cae..0000000000
--- a/network/vmware-horizon-client/vmware-bundle.eclass
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/vmware-bundle.eclass,v 1.2 2011/08/22 04:46:32 vapier Exp $
-
-# @ECLASS: vmware-bundle.eclass
-# @MAINTAINER:
-# vmware@gentoo.org
-# @AUTHOR:
-# Matt Whitlock <matt@whitlock.name>
-# @BLURB: Provides extract functionality for vmware products bundles
-
-# This version of the file has been modified to work as part of the vmware SlackBuild. Since the
-# modifications are limited to renaming functions, we'll keep the original header
-
-extract_bundle_component() {
- local bundle=${1:?} component=${2:?} dest=${3:-${2}}
- cat > "${CWD}"/list-bundle-components.xsl <<-EOF
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output omit-xml-declaration="yes"/>
- <xsl:template match="text()"/>
- <xsl:template match="/bundle/components/component">
- <xsl:value-of select="@offset"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="@size"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>&#10;</xsl:text>
- </xsl:template>
- </xsl:stylesheet>
- EOF
- local -i bundle_size=$(stat -L -c'%s' "${bundle}")
- local -i bundle_manifestOffset=$(od -An -j$((bundle_size-36)) -N4 -tu4 "${bundle}")
- local -i bundle_manifestSize=$(od -An -j$((bundle_size-40)) -N4 -tu4 "${bundle}")
- local -i bundle_dataOffset=$(od -An -j$((bundle_size-44)) -N4 -tu4 "${bundle}")
- local -i bundle_dataSize=$(od -An -j$((bundle_size-52)) -N8 -tu8 "${bundle}")
- tail -c+$((bundle_manifestOffset+1)) "${bundle}" 2> /dev/null | head -c$((bundle_manifestSize)) |
- xsltproc "${CWD}"/list-bundle-components.xsl - |
- while read -r component_offset component_size component_name ; do
- if [[ ${component_name} == ${component} ]] ; then
- echo "Extracting '${component_name}' component from '$(basename "${bundle}")'"
- extract_component "${bundle}" "${dest}" $((bundle_dataOffset+component_offset))
- echo "Done."
- fi
- done
-}
-
-extract_component() {
- local component=${1:?} dest=${2:-.}
- local -i offset=${3}
- cat > "${CWD}"/list-component-files.xsl <<-EOF
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output omit-xml-declaration="yes"/>
- <xsl:template match="text()"/>
- <xsl:template match="/component/fileset/file">
- <xsl:value-of select="@offset"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="@compressedSize"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="@uncompressedSize"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="@path"/>
- <xsl:text>&#10;</xsl:text>
- </xsl:template>
- </xsl:stylesheet>
- EOF
- local -i component_manifestOffset=$(od -An -j$((offset+9)) -N4 -tu4 "${component}")
- local -i component_manifestSize=$(od -An -j$((offset+13)) -N4 -tu4 "${component}")
- local -i component_dataOffset=$(od -An -j$((offset+17)) -N4 -tu4 "${component}")
- local -i component_dataSize=$(od -An -j$((offset+21)) -N8 -tu8 "${component}")
- tail -c+$((offset+component_manifestOffset+1)) "${component}" 2> /dev/null |
- head -c$((component_manifestSize)) | xsltproc "${CWD}"/list-component-files.xsl - |
- while read -r file_offset file_compressedSize file_uncompressedSize file_path ; do
- if [[ ${file_path} ]] ; then
- echo -n '.'
- file_path="${dest}/${file_path}"
- mkdir -p "$(dirname "${file_path}")" || die
- tail -c+$((offset+component_dataOffset+file_offset+1)) "${component}" 2> /dev/null |
- head -c$((file_compressedSize)) | gzip -cd > "${file_path}" || die
- fi
- done
- echo
-}
diff --git a/network/vmware-horizon-client/vmware-horizon-client.SlackBuild b/network/vmware-horizon-client/vmware-horizon-client.SlackBuild
index d8c70d3605..4216cc2f62 100644
--- a/network/vmware-horizon-client/vmware-horizon-client.SlackBuild
+++ b/network/vmware-horizon-client/vmware-horizon-client.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for vmware-horizon-client
# Copyright 2015 Beni Keller, Schwyz, Switzerland
+# Copyright 2024 Erich Ritz, Jenks, Oklahoma, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,76 +26,44 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vmware-horizon-client
-VERSION=${VERSION:-3.4.0}
+SRCNAM=VMware-Horizon-Client
+VERSION=${VERSION:-2312.1_8.12.1_23543969}
+DEBVERSION=${VERSION//_/-}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-ARCH=i586
-_BUILD=2769709
-
-# Install PCOIP component
-PCOIP=${PCOIP:-YES}
-# Install USB-redirection component
-# This is deactivated by default because
-# It's not working with the current version of libcrypto.
-USB=${USB:-NO}
-# Install Smartcard component
-SMARTCRD=${SMARTCRD:-YES}
-# Install Real Time Audio and Video component
-RTAV=${RTAV:-YES}
-
-echo $PCOIP
-break
-
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
- exit 0
-fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-BUNDLE=$CWD/VMware-Horizon-Client-$VERSION-$_BUILD.x86.bundle
-# All the components we support with this SlackBuild. The
-# 'virtual-printing' support is excluded because I have no
-# way to test whether it's working.
-COMPONENTS="client pcoip usb smartcard rtav"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-
-# We use the Gentoo eclass to extract components from the bundle.
-# These are the settings needed for these functions.
-
-
-
-
-export T="$CWD"
-
-ebegin() {
- echo -n "Begin ${1}: "
-}
-eend() {
- echo 'done'
-}
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
-source "$CWD/vmware-bundle.eclass"
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-# Extracting the components from the bundle
-for COMPONENT in $COMPONENTS; do
- extract_bundle_component $BUNDLE "vmware-horizon-$COMPONENT" "$CWD/extract/vmware-horizon-$COMPONENT"
-done
+# Upstream only has binary support for x86_64 at present.
+if [ "$ARCH" = "x86_64" ]; then
+ DEBARCH="x64"
+else
+ echo "Sorry, the VMware Horizon Client binary is currently available for x86_64 only."
+ exit 1
+fi
-cd $CWD/extract
+set -e
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar p $CWD/${SRCNAM}-${DEBVERSION}.$DEBARCH.deb data.tar.gz | tar xzv
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -102,69 +71,52 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Dirty hack copied from Arch PKGBUILD
-# https://aur.archlinux.org/packages/vm/vmware-horizon-client
-# Helps linking to the correct version of the OpenSSL libs
-for FILE in $(find "$CWD/extract/" -type f); do
- # executables and libraries only
- file --mime "${FILE}" | egrep -q "(application/x-(executable|sharedlib)|text/x-shellscript)" || continue
-
- # make executable
- chmod +x "${FILE}"
-
- # link against libudev.so.1
- #sed -i -e 's/libudev.so.0/libudev.so.1/' "${FILE}"
-
- # even openssl 1.0.1.x has library file names ending in .so.1.0.0
- sed -i -e 's/libssl.so.1.0.1/libssl.so.1.0.0/' \
- -e 's/libcrypto.so.1.0.1/libcrypto.so.1.0.0/' \
- "${FILE}"
-done
-# Delete these libraries. We'll recreate these files later as links
-rm "$CWD"/extract/vmware-horizon-pcoip/pcoip/lib/vmware/lib{crypto,ssl}.so.1.0.1
-
-# We install the client without the other components
-# Since it's a binary distribution we just copy the files
-cd $CWD/extract/vmware-horizon-client
-
-mkdir -p "$PKG/usr/"
-mkdir -p "$PKG/usr/doc/"
-
-cp -a bin/ "$PKG/usr/"
-cp -a lib/ "$PKG/usr/"
-cp -a share/ "$PKG/usr/"
-cp -a doc/ "$PKG/usr/doc/$PRGNAM-$VERSION/"
-cp -a debug/ "$PKG/usr/doc/$PRGNAM-$VERSION/"
+# Move lib to lib64
+mv $PKG/usr/lib $PKG/usr/lib64
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/bin/vmware-appstub
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/bin/vmware-url-filter
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/bin/vmware-view
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/bin/vmware-view-lib-scan
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/bin/vmware-view-log-collector
+sed -i 's-/usr/lib-/usr/lib64-g' $PKG/usr/lib64/vmware/view/integratedPrinting/integrated-printing-setup.sh
+
+#find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+# | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+#find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+# | cut -f 1 -d : | xargs chmod 755 2> /dev/null || true
+
+# Handle Debian's postinst:
+ln -s /lib64/libudev.so.1 $PKG/usr/lib64/vmware/libudev.so.0
+ln -s /usr/lib64/libsecret-1.so $PKG/usr/lib64/vmware/libsecret.so
+mkdir -p $PKG/etc/rc0.d
+mkdir -p $PKG/etc/rc3.d
+mkdir -p $PKG/etc/rc4.d
+mkdir -p $PKG/etc/rc6.d
+ln -s /etc/init.d/ftsprhv $PKG/etc/rc0.d/K08ftsprhv
+ln -s /etc/init.d/ftsprhv $PKG/etc/rc6.d/K08ftsprhv
+ln -s /etc/init.d/ftsprhv $PKG/etc/rc3.d/S50ftsprhv
+ln -s /etc/init.d/ftsprhv $PKG/etc/rc4.d/S50ftsprhv
+ln -s /etc/init.d/ftscanhv $PKG/etc/rc0.d/K08ftscanhv
+ln -s /etc/init.d/ftscanhv $PKG/etc/rc6.d/K08ftscanhv
+ln -s /etc/init.d/ftscanhv $PKG/etc/rc3.d/S50ftscanhv
+ln -s /etc/init.d/ftscanhv $PKG/etc/rc4.d/S50ftscanhv
+ln -s /etc/init.d/vmware-USBArbitrator $PKG/etc/rc0.d/K01vmware-USBArbitrator
+ln -s /etc/init.d/vmware-USBArbitrator $PKG/etc/rc6.d/K01vmware-USBArbitrator
+ln -s /etc/init.d/vmware-USBArbitrator $PKG/etc/rc3.d/S01vmware-USBArbitrator
+ln -s /etc/init.d/vmware-USBArbitrator $PKG/etc/rc4.d/S01vmware-USBArbitrator
+ln -sf /usr/lib64/vmware/view/usb/vmware-usbarbitrator $PKG/usr/bin/vmware-usbarbitrator
+chmod +755 $PKG/usr/lib64/vmware/view/html5mmr/*.so*
+chmod +755 $PKG/usr/lib64/vmware/view/vdpService/webrtcRedir/libwebrtc_sharedlib.so
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/usr/share/doc/vmware-horizon-client/* $PKG/usr/doc/$PRGNAM-$VERSION/
+rm -rf $PKG/usr/share/doc
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# We install the components
-if [ "$PCOIP" == "YES" ]; then
- cd ../vmware-horizon-pcoip
- cp -a pcoip/lib/* "$PKG/usr/lib/"
- cp -a pcoip/bin/* "$PKG/usr/bin/"
- # We create the symbolic links for the libraries
- ln -sf ../../lib/libcrypto.so.1.0.0 "$PKG/usr/lib/vmware/libcrypto.so.1.0.0"
- ln -sf ../../lib/libssl.so.1.0.0 "$PKG/usr/lib/vmware/libssl.so.1.0.0"
-fi
-
-if [ "$USB" == "YES" ]; then
- cd ../vmware-horizon-usb
- cp -a bin/* "$PKG/usr/bin/"
-fi
-
-if [ "$SMARTCRD" == "YES" ]; then
- cd ../vmware-horizon-smartcard
- cp -a lib/* "$PKG/usr/lib/"
-fi
-
-if [ "$RTAV" == "YES" ]; then
- cd ../vmware-horizon-rtav
- cp -a lib/* "$PKG/usr/lib/"
-fi
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/vmware-horizon-client/vmware-horizon-client.info b/network/vmware-horizon-client/vmware-horizon-client.info
index f5b507edfe..a8583ee4f6 100644
--- a/network/vmware-horizon-client/vmware-horizon-client.info
+++ b/network/vmware-horizon-client/vmware-horizon-client.info
@@ -1,10 +1,10 @@
PRGNAM="vmware-horizon-client"
-VERSION="3.4.0"
-HOMEPAGE="https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_horizon_clients/3_0"
-DOWNLOAD="https://download3.vmware.com/software/view/viewclients/CART15Q1/VMware-Horizon-Client-3.4.0-2769709.x86.bundle"
-MD5SUM="8f963a6b4eea7b2625e1e9aecd130234"
-DOWNLOAD_x86_64="UNTESTED"
-MD5SUM_x86_64=""
+VERSION="2312.1_8.12.1_23543969"
+HOMEPAGE="https://customerconnect.vmware.com/downloads/info/slug/desktop_end_user_computing/vmware_horizon_clients/horizon_8"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://download3.vmware.com/software/CART25FQ1_LIN64_DebPkg_2312.1/VMware-Horizon-Client-2312.1-8.12.1-23543969.x64.deb"
+MD5SUM_x86_64="25cf7acbe05f250297f3697f4b21a636"
REQUIRES=""
-MAINTAINER="Navigium"
-EMAIL="beni.nospam@sdf.org"
+MAINTAINER="Erich Ritz"
+EMAIL="erich.public@protonmail.com"