pcoip-client-2024.10.1ROKO__
download
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit unpacker xdg-utils fcaps
DESCRIPTION="Teradici PCOIP client for x86_64 (64bit) Linux"
HOMEPAGE="https://www.teradici.com/"
UBUNTU="22.04"
SRC_URI="https://dl.teradici.com/DeAdBCiUYInHcSTy/pcoip-client/deb/ubuntu/pool/focal/main/p/pc/pcoip-client_${PV}-${UBUNTU}/pcoip-client_${PV}-${UBUNTU}_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/p/protobuf/libprotobuf23_3.12.4-1ubuntu7_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/universe/h/hiredis/libhiredis0.14_0.14.1-2_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/b/boost1.71/libboost-system1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/b/boost1.71/libboost-thread1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/b/boost1.71/libboost-chrono1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/b/boost1.71/libboost-filesystem1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/universe/b/boost1.71/libboost-regex1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/main/b/boost1.71/libboost-serialization1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/universe/b/boost1.71/libboost-random1.71.0_1.71.0-6ubuntu6_amd64.deb
http://se.archive.ubuntu.com/ubuntu/pool/universe/b/boost1.71/libboost-container1.71.0_1.71.0-6ubuntu6_amd64.deb
"
LICENSE="Teradici"
SLOT="0"
KEYWORDS="-* ~amd64"
RDEPEND="
sys-apps/pcsc-lite
"
BDEPEND="
app-arch/gzip
dev-util/patchelf
sys-libs/libcap
"
S="${WORKDIR}"
QA_PREBUILT="
/usr/bin/pcoip-client
/usr/lib64/pcoip-client/*.so*
/usr/lib64/pcoip-client/*/*.so*
/usr/libexec/pcoip-client/usb-helper
"
src_prepare() {
default
patchelf --replace-needed libGraphicsMagick++-Q16.so.12 libGraphicsMagick++.so.12 "usr/lib/x86_64-linux-gnu/org.hp.pcoip-client/vchan_plugins/libvchan-plugin-clipboard.so" || die "Unable to patch libvchan-plugin-clipboard.so for libGraphicsMagick++.so.12"
gunzip usr/share/man/man8/pcoip-configure-kernel-networking.8.gz || die "Failed to uncompress man"
}
src_install() {
dobin usr/bin/pcoip-client-support-bundler
exeinto /usr/sbin
doexe usr/sbin/pcoip-configure-kernel-networking
insinto /usr/lib64/pcoip-client
patchelf --set-rpath '/usr/lib64/pcoip-client' usr/libexec/pcoip-client/pcoip-client || die "Failed to set rpath"
doins usr/libexec/pcoip-client/pcoip-client
cat <<EOF > "${T}/pcoip-client"
#!/bin/sh
export QML2_IMPORT_PATH="/usr/lib64/pcoip-client/qml"
export QT_PLUGIN_PATH="/usr/lib64/pcoip-client/plugins"
export QT_QPA_PLATFORM_PLUGIN_PATH="/usr/lib64/pcoip-client/plugins/platforms"
exec /usr/lib64/pcoip-client/pcoip-client"\$@"
EOF
dobin "${T}/pcoip-client"
doins -r usr/lib/x86_64-linux-gnu/pcoip-client/*
doins usr/lib/x86_64-linux-gnu/libprotobuf.so.23{,.0.4}
doins usr/lib/x86_64-linux-gnu/libhiredis.so.0.14
doins usr/lib/x86_64-linux-gnu/libboost_system.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_thread.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_chrono.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_regex.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_serialization.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_random.so.1.71.0
doins usr/lib/x86_64-linux-gnu/libboost_container.so.1.71.0
insinto /usr/lib64/org.hp.pcoip-client/vchan_plugins
doins usr/lib/x86_64-linux-gnu/org.hp.pcoip-client/vchan_plugins/libvchan-plugin-clipboard.so
find "${ED}/usr/lib64/" -name "*.so*" -type f -exec chmod +x {} \; || die "Change .so permission failed"
find "${ED}/usr/lib64/" -type f -name "*.so" -exec patchelf --set-rpath "/usr/lib64/pcoip-client" {} + || die "Failed to set rpath"
exeinto /usr/libexec/pcoip-client
doexe usr/libexec/pcoip-client/usb-helper
insinto /usr/share/{applications,fonts,icons}
doins -r usr/share/*
insinto /usr/share/doc/"${P}"
doins usr/share/doc/client/pcoip-client/copyright
doman usr/share/man/man8/pcoip-configure-kernel-networking.8
}
pkg_postinst() {
chmod +x /usr/lib64/pcoip-client/pcoip-client || die "Change pcoip-client permission failed"
fcaps cap_setgid+p /usr/lib64/pcoip-client/pcoip-client
xdg_desktop_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}