diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | 0001-ld-preload.patch | 15 | ||||
-rw-r--r-- | PKGBUILD | 29 |
3 files changed, 32 insertions, 16 deletions
@@ -1,18 +1,20 @@ pkgbase = vmware-horizon-client pkgdesc = VMware Horizon Client connect to VMware Horizon virtual desktop pkgver = 5.0.0 - pkgrel = 1 + pkgrel = 2 url = https://www.vmware.com/go/viewclients arch = x86_64 license = custom makedepends = libxslt source = vmware-horizon-client-5.0.0-12557422-x86_64.bundle::https://download3.vmware.com/software/view/viewclients/CART20FQ1/VMware-Horizon-Client-5.0.0-12557422.x64.bundle source = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/vmware-bundle.eclass + source = 0001-ld-preload.patch source = vmware-horizon-usb source = vmware-horizon-usb.service source = vmware-horizon-virtual-printing.service sha256sums = e2e4af4f82638f28824ebd01c57a099915b57930d885a16f785234882157aaad sha256sums = d8794c22229afdeb698dae5908b7b2b3880e075b19be38e0b296bb28f4555163 + sha256sums = 974a6e2f513c114df9923d4366308e31ab53cfaef89d5f794204f1eeb1d98f01 sha256sums = 008b60ebf45f7d1e033c8ad8ce1688d5e1c59fc0668493067fb89b563b1dc00f sha256sums = a897c1b9e8928fc222880ebbfc7bb6aff940bff4acf4e4e0cd4002fff81c7226 sha256sums = e47e770a1e19ed321de7c2765b2d682f59ac466aef92b2e4ea5e65cacf56de36 diff --git a/0001-ld-preload.patch b/0001-ld-preload.patch new file mode 100644 index 000000000000..184717a276f7 --- /dev/null +++ b/0001-ld-preload.patch @@ -0,0 +1,15 @@ +--- a/vmware-horizon-client/bin/vmware-view 2019-05-28 10:24:21.000000000 +0200 ++++ b/vmware-horizon-client/bin/vmware-view 2019-05-28 10:51:19.859301412 +0200 +@@ -16,6 +16,12 @@ snapPath="/snap/gnome-system-monitor/cur + cpu=`cat /proc/cpuinfo | grep ARM | wc -l` + pid_self=$$ + ++# Starting vmware-view-crtbora results in symbol lookup error. For any reason ++# libgiomm and libpangomm are loaded from /usr/lib/, not /usr/lib/vmware/. ++# Preload these libraries to mitigate the issue. ++LD_PRELOAD="/usr/lib/vmware/libgiomm-2.4.so.1 /usr/lib/vmware/libpangomm-1.4.so.1" ++export LD_PRELOAD ++ + # Set media provider install path base on $VMWARE_HORIZON_MEDIA_PROVIDER_PATH + if [[ "$VMWARE_HORIZON_MEDIA_PROVIDER_PATH" = "" ]]; then + mediaproviderPath="/usr/lib/vmware/mediaprovider" @@ -8,15 +8,15 @@ pkgname=('vmware-horizon-client' 'vmware-horizon-virtual-printing' 'vmware-horizon-tsdr' 'vmware-horizon-mmr') +_bundled_with_client=('vmware-horizon-pcoip' + 'vmware-horizon-seamless-window') # Currently unused bundled packages: # vmware-horizon-media-provider - # vmware-horizon-seamless-window # vmware-horizon-serialportclient -# https://download3.vmware.com/software/view/viewclients/CART19FQ4/VMware-Horizon-Client-4.10.0-11053294.x64.bundle pkgver=5.0.0 _build=12557422 _cart='CART20FQ1' -pkgrel=1 +pkgrel=2 pkgdesc='VMware Horizon Client connect to VMware Horizon virtual desktop' arch=('x86_64') url='https://www.vmware.com/go/viewclients' @@ -24,11 +24,13 @@ license=('custom') makedepends=('libxslt') source=("${pkgbase}-${pkgver}-${_build}-x86_64.bundle::https://download3.vmware.com/software/view/viewclients/${_cart}/VMware-Horizon-Client-${pkgver}-${_build}.x64.bundle" 'http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/vmware-bundle.eclass' + '0001-ld-preload.patch' 'vmware-horizon-usb' 'vmware-horizon-usb.service' 'vmware-horizon-virtual-printing.service') sha256sums=('e2e4af4f82638f28824ebd01c57a099915b57930d885a16f785234882157aaad' 'd8794c22229afdeb698dae5908b7b2b3880e075b19be38e0b296bb28f4555163' + '974a6e2f513c114df9923d4366308e31ab53cfaef89d5f794204f1eeb1d98f01' '008b60ebf45f7d1e033c8ad8ce1688d5e1c59fc0668493067fb89b563b1dc00f' 'a897c1b9e8928fc222880ebbfc7bb6aff940bff4acf4e4e0cd4002fff81c7226' 'e47e770a1e19ed321de7c2765b2d682f59ac466aef92b2e4ea5e65cacf56de36') @@ -52,7 +54,7 @@ prepare() { source "${srcdir}/vmware-bundle.eclass" - for bundle in "${pkgname[@]}" vmware-horizon-pcoip; do + for bundle in "${pkgname[@]}" "${_bundled_with_client[@]}"; do vmware-bundle_extract-bundle-component "${srcdir}/${pkgbase}-${pkgver}-${_build}-${CARCH}.bundle" "${bundle}" "${srcdir}/extract/${bundle}" done } @@ -72,7 +74,7 @@ build() { # libssl.so.1.0.[12] -> libssl-vmw.so.0 # libcrypto.so.1.0.[12] -> libcrypto-vmw.so.0 - for bundle in "${pkgname[@]}" vmware-horizon-pcoip; do + for bundle in "${pkgname[@]}" "${_bundled_with_client[@]}"; do for FILE in $(find "${bundle}" -type f); do # executables and libraries only file --mime "${FILE}" | egrep -q "(application/x-(pie-)?(executable|sharedlib)|text/x-shellscript)" || continue @@ -110,13 +112,12 @@ build() { "${srcdir}"/extract/vmware-horizon-pcoip/pcoip/lib/vmware/lib{crypto,ssl}.so.1.0.2 fi + # and some more dynamic linking... + patch -Np1 < ../0001-ld-preload.patch + # remove keymap files, depend on vmware-keymaps instead rm -rf "${srcdir}"/extract/vmware-horizon-pcoip/pcoip/lib/vmware/xkeymap/ - # disable seamless window feature with vmware-view-crtbora - # this requires binary libraries with messy linking... - sed -i 's/vmware-view-crtbora/vmware-view/' "${srcdir}"/extract/vmware-horizon-client/bin/vmware-view - sed -i -e '/Name=/a Comment=Connect to VMware Horizon View virtual machines' -e '/Icon=/s/.png$//' \ "${srcdir}"/extract/vmware-horizon-client/share/applications/vmware-view.desktop } @@ -156,13 +157,11 @@ package_vmware-horizon-client() { cp -a pcoip/lib/ "${pkgdir}/usr/" cp -a pcoip/bin/ "${pkgdir}/usr/" - #cd "${srcdir}/extract/vmware-horizon-seamless-window/" - - #mkdir -p "${pkgdir}/usr/" - #install -D -m0755 vmware-view-crtbora "${pkgdir}/usr/lib/vmware/view/bin/vmware-view-crtbora" - #cp -a lib/ "${pkgdir}/usr/" + cd "${srcdir}/extract/vmware-horizon-seamless-window/" - rm -rf "${pkgdir}/usr/lib/vmware/view/crtbora/" + mkdir -p "${pkgdir}/usr/" + install -D -m0755 vmware-view-crtbora "${pkgdir}/usr/lib/vmware/view/bin/vmware-view-crtbora" + cp -a lib/ "${pkgdir}/usr/" } package_vmware-horizon-rtav() { |