summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO80
-rw-r--r--PKGBUILD202
-rw-r--r--vmware-horizon-client.desktop10
-rw-r--r--vmware-horizon-client.install15
-rw-r--r--vmware-horizon-usb4
-rw-r--r--vmware-horizon-usb-tmpfiles.conf1
-rw-r--r--vmware-horizon-usb.install10
-rw-r--r--vmware-horizon-usb.service9
-rw-r--r--vmware-horizon-virtual-printing.install9
-rw-r--r--vmware-horizon-virtual-printing.service11
10 files changed, 351 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a202932e766e
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,80 @@
+pkgbase = vmware-horizon-client
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop
+ pkgver = 3.4.0
+ pkgrel = 2
+ url = https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_horizon_clients/3_0
+ arch = i686
+ arch = x86_64
+ license = custom
+ makedepends = libxslt
+ source = https://download3.vmware.com/software/view/viewclients/CART15Q1/VMware-Horizon-Client-3.4.0-2769709.x86.bundle
+ source = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/vmware-bundle.eclass
+ source = vmware-horizon-client.desktop
+ source = vmware-horizon-usb
+ source = vmware-horizon-usb.service
+ source = vmware-horizon-usb-tmpfiles.conf
+ source = vmware-horizon-virtual-printing.service
+ sha256sums = 50901cae7a3c62b31b68e946a7b1e380f6c2c158aa8532dda536890a602e1d1b
+ sha256sums = d8794c22229afdeb698dae5908b7b2b3880e075b19be38e0b296bb28f4555163
+ sha256sums = 21927f16cfb92ac07777297787106982b301b5d42ca068e052a01dc3f2cbb208
+ sha256sums = 7c78953823f7307814104881b322dcf66c36ca02e44e559239ac51abcf1e7a37
+ sha256sums = 5e737d69e49ea7e039bc94f358b45c8e6d9071b7c041a53800555d3dc21c8dac
+ sha256sums = ec763930dd50d6e77a31c40c939909752cfb124cafb0a4ca4f76860375a14d75
+ sha256sums = e47e770a1e19ed321de7c2765b2d682f59ac466aef92b2e4ea5e65cacf56de36
+
+pkgname = vmware-horizon-client
+ install = vmware-horizon-client.install
+ depends = gnome-icon-theme
+ optdepends = freerdp: RDP remote desktop connections
+ optdepends = rdesktop: RDP remote desktop connections
+ optdepends = vmware-horizon-pcoip: PCoIP remote desktop connections
+ optdepends = vmware-horizon-rtav: Real-Time Audio-Video
+ optdepends = vmware-horizon-smartcard: Authenticate via Samrtcard
+ optdepends = vmware-horizon-usb: Redirect USB devices
+ optdepends = vmware-horizon-virtual-printing: Redirect local printers
+ conflicts = vmware-view-open-client
+ conflicts = vmware-view-open-client-beta
+ conflicts = vmware-view-client
+ depends_i686 = openssl
+ depends_i686 = libpng12
+ depends_i686 = gtk2
+ depends_i686 = libxml2
+ depends_i686 = libxss
+ depends_x86_64 = lib32-openssl
+ depends_x86_64 = lib32-libpng12
+ depends_x86_64 = lib32-gtk2
+ depends_x86_64 = lib32-libxml2
+ depends_x86_64 = lib32-libxss
+
+pkgname = vmware-horizon-pcoip
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop - PCoIP connection
+ depends = vmware-horizon-client
+ depends_i686 = libxtst
+ optdepends_i686 = alsa-lib: audio support via alsa
+ optdepends_i686 = libpulse: audio support via pulse sound server
+ depends_x86_64 = lib32-libxtst
+ optdepends_x86_64 = lib32-alsa-lib: audio support via alsa
+ optdepends_x86_64 = lib32-libpulse: audio support via pulse sound server
+
+pkgname = vmware-horizon-rtav
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop - real-time audio-video (webcam and audio-in)
+ depends = vmware-horizon-client
+
+pkgname = vmware-horizon-smartcard
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop - smartcard authentication
+ depends = vmware-horizon-client
+ depends_i686 = pcsclite
+ depends_x86_64 = lib32-pcsclite
+
+pkgname = vmware-horizon-usb
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop - USB redirection
+ install = vmware-horizon-usb.install
+ depends = vmware-horizon-client
+
+pkgname = vmware-horizon-virtual-printing
+ pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop - virtual printing
+ install = vmware-horizon-virtual-printing.install
+ depends = vmware-horizon-client
+ depends = openssl098
+ depends = libcups
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..bb0e67418d54
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,202 @@
+# Maintainer: Christian Hesse <mail@eworm.de>
+
+pkgbase=vmware-horizon-client
+pkgname=('vmware-horizon-client' 'vmware-horizon-pcoip' 'vmware-horizon-rtav' 'vmware-horizon-smartcard' 'vmware-horizon-usb' 'vmware-horizon-virtual-printing')
+pkgver=3.4.0
+_build=2769709
+pkgrel=2
+pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop'
+arch=('i686' 'x86_64')
+url='https://my.vmware.com/web/vmware/info/slug/desktop_end_user_computing/vmware_horizon_clients/3_0'
+license=('custom')
+makedepends=('libxslt')
+source=("https://download3.vmware.com/software/view/viewclients/CART15Q1/VMware-Horizon-Client-${pkgver}-${_build}.x86.bundle"
+ 'http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/vmware-bundle.eclass'
+ 'vmware-horizon-client.desktop'
+ 'vmware-horizon-usb'
+ 'vmware-horizon-usb.service'
+ 'vmware-horizon-usb-tmpfiles.conf'
+ 'vmware-horizon-virtual-printing.service')
+sha256sums=('50901cae7a3c62b31b68e946a7b1e380f6c2c158aa8532dda536890a602e1d1b'
+ 'd8794c22229afdeb698dae5908b7b2b3880e075b19be38e0b296bb28f4555163'
+ '21927f16cfb92ac07777297787106982b301b5d42ca068e052a01dc3f2cbb208'
+ '7c78953823f7307814104881b322dcf66c36ca02e44e559239ac51abcf1e7a37'
+ '5e737d69e49ea7e039bc94f358b45c8e6d9071b7c041a53800555d3dc21c8dac'
+ 'ec763930dd50d6e77a31c40c939909752cfb124cafb0a4ca4f76860375a14d75'
+ 'e47e770a1e19ed321de7c2765b2d682f59ac466aef92b2e4ea5e65cacf56de36')
+
+# We need these functions for the Gentoo eclass...
+ebegin() {
+ echo -n "Begin ${1}: "
+}
+eend() {
+ echo 'done'
+}
+
+prepare() {
+ # We need this variable for the Gentoo eclass...
+ export T="${srcdir}"
+
+ source "${srcdir}/vmware-bundle.eclass"
+
+ for bundle in ${pkgname[@]}; do
+ vmware-bundle_extract-bundle-component "${srcdir}/VMware-Horizon-Client-${pkgver}-${_build}.x86.bundle" "${bundle}" "${srcdir}/extract/${bundle}"
+ done
+
+ # This is a dirty hack, but it works.
+ # Change dynamic section in ELF files to fix dynamic linking.
+ # Make sure the length is not changed!
+ # libudev.so.0 -> libudev.so.1
+ # libssl.so.1.0.1 -> libssl.so.1.0.0
+ # libcrypto.so.1.0.1 -> libcrypto.so.1.0.0
+ for FILE in $(find "${srcdir}/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
+
+ # now that we fixed dynamic linking let's remove binary libs
+ # we create symlinks in package() function
+ rm "${srcdir}"/extract/vmware-horizon-pcoip/pcoip/lib/vmware/lib{crypto,ssl}.so.1.0.1
+}
+
+package_vmware-horizon-client() {
+ conflicts=('vmware-view-open-client' 'vmware-view-open-client-beta' 'vmware-view-client')
+ depends=('gnome-icon-theme')
+ optdepends=('freerdp: RDP remote desktop connections'
+ 'rdesktop: RDP remote desktop connections'
+ 'vmware-horizon-pcoip: PCoIP remote desktop connections'
+ 'vmware-horizon-rtav: Real-Time Audio-Video'
+ 'vmware-horizon-smartcard: Authenticate via Samrtcard'
+ 'vmware-horizon-usb: Redirect USB devices'
+ 'vmware-horizon-virtual-printing: Redirect local printers')
+ depends_x86_64=('lib32-openssl' 'lib32-libpng12' 'lib32-gtk2' 'lib32-libxml2' 'lib32-libxss')
+ depends_i686=('openssl' 'libpng12' 'gtk2' 'libxml2' 'libxss')
+ install=vmware-horizon-client.install
+
+ cd "${srcdir}/extract/vmware-horizon-client/"
+
+ mkdir -p "${pkgdir}/usr/"
+ cp -a bin/ "${pkgdir}/usr/"
+ cp -a lib/ "${pkgdir}/usr/"
+ cp -a share/ "${pkgdir}/usr/"
+
+ mkdir -p "${pkgdir}/usr/share/doc/"
+ cp -a doc/ "${pkgdir}/usr/share/doc/vmware-horizon-client"
+ cp -a debug/ "${pkgdir}/usr/share/doc/vmware-horizon-client/"
+
+ install -D -m0644 "${srcdir}/vmware-horizon-client.desktop" "${pkgdir}/usr/share/applications/vmware-horizon-client.desktop"
+}
+
+package_vmware-horizon-pcoip() {
+ pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop - PCoIP connection'
+ depends=('vmware-horizon-client')
+ depends_x86_64=('lib32-libxtst')
+ optdepends_x86_64=('lib32-alsa-lib: audio support via alsa'
+ 'lib32-libpulse: audio support via pulse sound server')
+ depends_i686=('libxtst')
+ optdepends_i686=('alsa-lib: audio support via alsa'
+ 'libpulse: audio support via pulse sound server')
+
+ cd "${srcdir}/extract/vmware-horizon-pcoip/"
+
+ mkdir -p "${pkgdir}/usr/"
+ cp -a pcoip/lib/ "${pkgdir}/usr/lib"
+ cp -a pcoip/bin/ "${pkgdir}/usr/bin"
+
+ case ${CARCH} in
+ x86_64)
+ _libdir="lib32"
+ ;;
+ i686)
+ _libdir="lib"
+ ;;
+ esac
+
+ ln -sf ../../${_libdir}/libcrypto.so.1.0.0 "${pkgdir}/usr/lib/vmware/libcrypto.so.1.0.0"
+ ln -sf ../../${_libdir}/libssl.so.1.0.0 "${pkgdir}/usr/lib/vmware/libssl.so.1.0.0"
+}
+
+package_vmware-horizon-rtav() {
+ pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop - real-time audio-video (webcam and audio-in)'
+ depends=('vmware-horizon-client')
+ cd "${srcdir}/extract/vmware-horizon-rtav/"
+
+ mkdir -p "${pkgdir}/usr/"
+ cp -a lib/ "${pkgdir}/usr/lib"
+}
+
+package_vmware-horizon-smartcard() {
+ pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop - smartcard authentication'
+ depends=('vmware-horizon-client')
+ depends_x86_64=('lib32-pcsclite')
+ depends_i686=('pcsclite')
+
+ cd "${srcdir}/extract/vmware-horizon-smartcard/"
+
+ mkdir -p "${pkgdir}/usr/"
+ cp -a lib/ "${pkgdir}/usr/lib"
+}
+
+package_vmware-horizon-usb() {
+ pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop - USB redirection'
+ depends=('vmware-horizon-client')
+ install=vmware-horizon-usb.install
+
+ cd "${srcdir}/extract/vmware-horizon-usb/"
+
+ mkdir -p "${pkgdir}/usr/lib/vmware/view/"
+ cp -a bin/ "${pkgdir}/usr/lib/vmware/view/usb"
+
+ install -D -m0755 "${srcdir}/vmware-horizon-usb" "${pkgdir}/usr/lib/systemd/scripts/vmware-horizon-usb"
+ install -D -m0644 "${srcdir}/vmware-horizon-usb.service" "${pkgdir}/usr/lib/systemd/system/vmware-horizon-usb.service"
+ install -D -m0644 "${srcdir}/vmware-horizon-usb-tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/vmware-horizon-usb.conf"
+
+ case ${CARCH} in
+ x86_64)
+ _libdir="lib32"
+ ;;
+ i686)
+ _libdir="lib"
+ ;;
+ esac
+}
+
+package_vmware-horizon-virtual-printing() {
+ pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop - virtual printing'
+ depends=('vmware-horizon-client' 'openssl098' 'libcups')
+ install=vmware-horizon-virtual-printing.install
+
+ cd "${srcdir}/extract/vmware-horizon-virtual-printing/"
+
+ mkdir -p "${pkgdir}/usr/bin/"
+
+ case ${CARCH} in
+ x86_64)
+ cp -a bin/x86_64-linux-NOSSL/thnu* "${pkgdir}/usr/bin/"
+ install -D -m0755 bin/x86_64-linux-NOSSL/.thnumod "${pkgdir}/etc/thnuclnt/.thnumod"
+ ;;
+ i686)
+ cp -a bin/i586-linux-NOSSL/thnu* "${pkgdir}/usr/bin/"
+ install -D -m0755 bin/i586-linux-NOSSL/.thnumod "${pkgdir}/etc/thnuclnt/.thnumod"
+ ;;
+ esac
+
+ install -D -m0755 lib/tprdp.so "${pkgdir}/usr/lib/vmware/rdpvcbridge/tprdp.so"
+
+ install -D -m0644 bin/conf/thnuclnt.convs "${pkgdir}/usr/share/cups/mime/thnuclnt.convs"
+ install -D -m0644 bin/conf/thnuclnt.types "${pkgdir}/usr/share/cups/mime/thnuclnt.types"
+
+ install -D -m0644 "${srcdir}/vmware-horizon-virtual-printing.service" "${pkgdir}/usr/lib/systemd/system/vmware-horizon-virtual-printing.service"
+}
+
diff --git a/vmware-horizon-client.desktop b/vmware-horizon-client.desktop
new file mode 100644
index 000000000000..88df6397f991
--- /dev/null
+++ b/vmware-horizon-client.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=VMware Horizon Client
+Comment=Connect to VMware Horizon View virtual machines
+GenericName=VMware Horizon Client
+Exec=vmware-view
+Icon=/usr/share/pixmap/vmware-view.png
+Terminal=false
+StartupNotify=true
+Type=Application
+Categories=System;Network;Utility;
diff --git a/vmware-horizon-client.install b/vmware-horizon-client.install
new file mode 100644
index 000000000000..220c88249215
--- /dev/null
+++ b/vmware-horizon-client.install
@@ -0,0 +1,15 @@
+uela() {
+ echo " > By installing this package you acknowledge that you agree to the End-User"
+ echo " > License Agreement (EULA) found in /usr/share/doc/vmware-horizon-client/."
+ echo " > If you do not agree to VMware EULA remove this package immediately:"
+ echo " > $ pacman -Rc vmware-horizon-client"
+}
+
+post_install() {
+ update-desktop-database -q
+ uela
+}
+
+post_upgrade(){
+ update-desktop-database -q
+}
diff --git a/vmware-horizon-usb b/vmware-horizon-usb
new file mode 100644
index 000000000000..b634fb578685
--- /dev/null
+++ b/vmware-horizon-usb
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+/usr/lib/vmware/view/usb/vmware-usbarbitrator
+/usr/lib/vmware/view/usb/vmware-view-usbd
diff --git a/vmware-horizon-usb-tmpfiles.conf b/vmware-horizon-usb-tmpfiles.conf
new file mode 100644
index 000000000000..2a09e9f88013
--- /dev/null
+++ b/vmware-horizon-usb-tmpfiles.conf
@@ -0,0 +1 @@
+d /var/run/vmware 0755 root - -
diff --git a/vmware-horizon-usb.install b/vmware-horizon-usb.install
new file mode 100644
index 000000000000..91407a80e85b
--- /dev/null
+++ b/vmware-horizon-usb.install
@@ -0,0 +1,10 @@
+post_install() {
+ echo " > To enable USB redirection you have to launch"
+ echo " > /usr/lib/systemd/scripts/vmware-horizon-usb or start/enable"
+ echo " > systemd service vmware-horizon-usb:"
+ echo " > $ systemctl start vmware-horizon-usb"
+}
+
+post_upgrade(){
+ post_install
+}
diff --git a/vmware-horizon-usb.service b/vmware-horizon-usb.service
new file mode 100644
index 000000000000..b9aa55fa1aa5
--- /dev/null
+++ b/vmware-horizon-usb.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=VMware Horizon USB daemon
+
+[Service]
+Type=forking
+ExecStart=/usr/lib/systemd/scripts/vmware-horizon-usb
+
+[Install]
+WantedBy=multi-user.target
diff --git a/vmware-horizon-virtual-printing.install b/vmware-horizon-virtual-printing.install
new file mode 100644
index 000000000000..57ebf9e31833
--- /dev/null
+++ b/vmware-horizon-virtual-printing.install
@@ -0,0 +1,9 @@
+post_install() {
+ echo " > To enable virtual printing you have to launch"
+ echo " > start/enable systemd service vmware-horizon-virtual-printing:"
+ echo " > $ systemctl start vmware-horizon-virtual-printing"
+}
+
+post_upgrade(){
+ post_install
+}
diff --git a/vmware-horizon-virtual-printing.service b/vmware-horizon-virtual-printing.service
new file mode 100644
index 000000000000..29181169f753
--- /dev/null
+++ b/vmware-horizon-virtual-printing.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=VMware Horizon virtual printing
+After=org.cups.cupsd.service
+
+[Service]
+Type=forking
+Environment="THNUCLNT_SVC=global:daemon"
+ExecStart=/usr/sbin/thnuclntd
+
+[Install]
+WantedBy=multi-user.target