summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/icaclient')
-rw-r--r--net-misc/icaclient/Manifest2
-rw-r--r--net-misc/icaclient/icaclient-22.9.0.21.ebuild256
2 files changed, 258 insertions, 0 deletions
diff --git a/net-misc/icaclient/Manifest b/net-misc/icaclient/Manifest
index 32cc32943b9e..fe989639c3e6 100644
--- a/net-misc/icaclient/Manifest
+++ b/net-misc/icaclient/Manifest
@@ -1,2 +1,4 @@
DIST linuxx64-22.5.0.16.tar.gz 162733197 BLAKE2B 32b4fd64d6bccf8a3be92e8f8ee59059839f31f4f771a6344fea320d2b635174c31c9e8d572a700568bab6032352fe72657dce1ee752327ed856370fa86acf9a SHA512 796ecbccc60995baae2082b5b275d7bf1482b19aed198de6d9f4083b2a3a68ff2fe73dfd1d3d33f0f885a157a77f20de008635eade36d5f9adff6b662aaefc1b
+DIST linuxx64-22.9.0.21.tar.gz 160511942 BLAKE2B 43b671bc5c5eac968d2d6fd55615dce0d19206e9d64124b7e3dabf4311837c5cfe9ac25867b01795b9dc019f993a4507e852f84faba5116d58bdc4c85b784d85 SHA512 ebfd3fd51a61e0d419833fa0393a311b7c22331b6d950d985437ad992af96a96a9b1ea7d6c085e23593c6fcd46a8f946ca6c7b942d6919226bfc847a831fb95c
DIST linuxx86-22.5.0.16.tar.gz 144032901 BLAKE2B 0f58adf7645eaba6ad75e126381ecfecf7434130b0e69bed75a0499386c5301475a48e414ce57aebdfeaea0cb6615ae93b48ecfdd0149851a56459d687d75bb7 SHA512 b94a3de41118d08f3ff549de33e80a85198a3db1349177cc5c921cdd45f1d5bb7e1ee338067602725a9bed16619216f552f98314d539915a251f020094ae3121
+DIST linuxx86-22.9.0.21.tar.gz 146501445 BLAKE2B 823a9f063448351ada3a0c552c0175b540f9403c8ee844232ae23cccfd9199acd46e0a2c21e9c051c4a84f2700261e0a4d9b6fcbfc133c6cdbeca29fa256ba68 SHA512 7f2d39ef279c704004a371a4b95b48f2be4ed32de7406dd877ce585e22fb523a39b90a7e1cd968205d55c708ebe80fa1a85d9677cc1feb819b1843f445908f2b
diff --git a/net-misc/icaclient/icaclient-22.9.0.21.ebuild b/net-misc/icaclient/icaclient-22.9.0.21.ebuild
new file mode 100644
index 000000000000..3cd962e36d51
--- /dev/null
+++ b/net-misc/icaclient/icaclient-22.9.0.21.ebuild
@@ -0,0 +1,256 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop wrapper xdg-utils
+
+DESCRIPTION="ICA Client for Citrix Presentation servers"
+HOMEPAGE="https://www.citrix.com/"
+SRC_URI="amd64? ( linuxx64-${PV}.tar.gz )
+ x86? ( linuxx86-${PV}.tar.gz )"
+
+LICENSE="icaclient"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="l10n_de l10n_es l10n_fr l10n_ja l10n_zh-CN"
+RESTRICT="mirror strip userpriv fetch"
+
+ICAROOT="/opt/Citrix/ICAClient"
+
+QA_PREBUILT="${ICAROOT#/}/*"
+
+# we have binaries for two conflicting kerberos implementations
+# https://bugs.gentoo.org/792090
+# https://bugs.gentoo.org/775995
+REQUIRES_EXCLUDE="
+ libgssapi.so.3
+ libgssapi_krb5.so.2 libkrb5.so.3
+"
+# we have binaries which wouls still support gstreamer:0.10
+REQUIRES_EXCLUDE="$REQUIRES_EXCLUDE
+ libgstapp-0.10.so.0
+ libgstbase-0.10.so.0
+ libgstinterfaces-0.10.so.0
+ libgstpbutils-0.10.so.0
+ libgstreamer-0.10.so.0
+"
+# we have binaries which depend on some ancient libunwind
+REQUIRES_EXCLUDE="$REQUIRES_EXCLUDE
+ libunwind.so.1
+"
+
+RDEPEND="
+ app-crypt/libsecret
+ dev-libs/atk
+ dev-libs/glib:2
+ dev-libs/libxml2
+ media-fonts/font-adobe-100dpi
+ media-fonts/font-misc-misc
+ media-fonts/font-cursor-misc
+ media-fonts/font-xfree86-type1
+ media-fonts/font-misc-ethiopic
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ media-libs/libogg
+ media-libs/libpulse
+ media-libs/libvorbis
+ media-libs/mesa
+ media-libs/speex
+ net-libs/libsoup:2.4
+ net-libs/webkit-gtk:4
+ sys-apps/util-linux
+ sys-libs/libcxx
+ sys-libs/libcxxabi
+ sys-libs/zlib
+ virtual/krb5
+ virtual/libudev
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/gtk+:2
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/libXaw
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXinerama
+ x11-libs/libXmu
+ x11-libs/libXrender
+ x11-libs/libXt
+ x11-libs/pango
+"
+DEPEND=""
+
+pkg_nofetch() {
+ elog "Download the client file ${A} from
+ https://www.citrix.com/downloads/workspace-app/"
+ elog "and place it into your DISTDIR directory."
+}
+
+pkg_setup() {
+ case ${ARCH} in
+ amd64)
+ ICAARCH=linuxx64
+ ;;
+ x86)
+ ICAARCH=linuxx86
+ ;;
+ *)
+ eerror "Given architecture is not supported by Citrix."
+ ;;
+ esac
+}
+
+src_unpack() {
+ default
+ mv "${WORKDIR}/${ICAARCH}/${ICAARCH}.cor" "${S}" || die
+}
+
+src_prepare() {
+ default
+ rm lib/UIDialogLibWebKit.so || die
+
+ # We need to avoid module.ini file getting added to the package's
+ # content because media-plugins/hdx-realtime-media-engine modifies
+ # this file on installation. See pkg_postinst()
+ mv nls/en/module.ini "${T}" || die
+}
+
+src_install() {
+ local bin tmpl dest
+
+ dodir "${ICAROOT}"
+
+ exeinto "${ICAROOT}"
+ doexe *.DLL libproxy.so wfica AuthManagerDaemon PrimaryAuthManager selfservice ServiceRecord
+
+ exeinto "${ICAROOT}"/lib
+ doexe lib/*.so
+
+ for dest in "${ICAROOT}"{,/nls/en{,.UTF-8}} ; do
+ insinto "${dest}"
+ doins nls/en.UTF-8/eula.txt
+ done
+
+ insinto "${ICAROOT}"
+ doins -r usb
+
+ insinto "${ICAROOT}"/config
+ # nls/en/*.ini is being handled by pkg_postinst()
+ doins config/* config/.*
+ for tmpl in {appsrv,wfclient}.template ; do
+ newins nls/en/${tmpl} ${tmpl/template/ini}
+ done
+ touch "${ED}/${ICAROOT}"/config/.server || die
+
+ insinto "${ICAROOT}"/gtk
+ doins gtk/*
+
+ insinto "${ICAROOT}"/gtk/glade
+ doins gtk/glade/*
+
+ insinto "${ICAROOT}"/site
+ doins -r site/*
+
+ dodir "${ICAROOT}"/help
+
+ insinto "${ICAROOT}"/config/usertemplate
+ doins config/usertemplate/*
+
+ local lang LANGCODES=( en )
+ use l10n_de && LANGCODES+=( de )
+ use l10n_es && LANGCODES+=( es )
+ use l10n_fr && LANGCODES+=( fr )
+ use l10n_ja && LANGCODES+=( ja )
+ use l10n_zh-CN && LANGCODES+=( zh_CN )
+
+ for lang in ${LANGCODES[@]} ; do
+ insinto "${ICAROOT}"/nls/${lang}
+ doins nls/${lang}/*
+
+ insinto "${ICAROOT}"/nls/$lang/UTF-8
+ doins nls/${lang}.UTF-8/*
+
+ insinto "${ICAROOT}"/nls/${lang}/LC_MESSAGES
+ doins nls/${lang}/LC_MESSAGES/*
+
+ insinto "${ICAROOT}"/nls/${lang}
+ dosym UTF-8 "${ICAROOT}"/nls/${lang}/utf8
+
+ for tmpl in {appsrv,wfclient}.template ; do
+ cp "${ED}/${ICAROOT}"/nls/${lang}/${tmpl} \
+ "${ED}/${ICAROOT}"/nls/${lang}/${tmpl/template/ini} \
+ || die
+ done
+ done
+
+ insinto "${ICAROOT}"/nls
+ dosym en /opt/Citrix/ICAClient/nls/C
+
+ insinto "${ICAROOT}"/icons
+ doins icons/*
+
+ insinto "${ICAROOT}"/keyboard
+ doins keyboard/*
+
+ cp -a util "${ED}/${ICAROOT}" || die
+ test -f util/HdxRtcEngine && fperms 0755 "${ICAROOT}"/util/HdxRtcEngine
+
+ rm -r "${S}"/keystore/cacerts || die
+ dosym ../../../../etc/ssl/certs "${ICAROOT}"/keystore/cacerts
+
+ local other_files=(
+ icasessionmgr
+ NativeMessagingHost
+ UtilDaemon
+ )
+
+ exeinto "${ICAROOT}"
+ for bin in ${other_files[@]} ; do
+ doexe ${bin}
+ done
+
+ # https://bugs.gentoo.org/655922
+ dosym gst_play1.0 "${ICAROOT}"/util/gst_play
+ dosym gst_read1.0 "${ICAROOT}"/util/gst_read
+ dosym libgstflatstm1.0.so "${ICAROOT}"/util/libgstflatstm.so
+
+ doenvd "${FILESDIR}"/10ICAClient
+
+ for bin in configmgr conncenter new_store ; do
+ make_wrapper ${bin} "${ICAROOT}"/util/${bin} . "${ICAROOT}"/util
+ done
+
+ for bin in selfservice wfica ; do
+ make_wrapper ${bin} "${ICAROOT}"/${bin} . "${ICAROOT}"
+ done
+
+ dodir /etc/revdep-rebuild/
+ echo "SEARCH_DIRS_MASK=\"${ICAROOT}\"" \
+ > "${ED}"/etc/revdep-rebuild/70icaclient
+
+ insinto "${ICAROOT}"/pkginf
+ newins "${WORKDIR}"/PkgId Ver.core."${ICAARCH}"
+
+ # 651926
+ domenu "${FILESDIR}"/*.desktop
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+
+ local inidest="${ROOT}${ICAROOT}/config"
+ if [[ ! -e "${inidest}"/module.ini ]] ; then
+ mv "${T}"/module.ini "${inidest}/" \
+ || ewarn 'Failed to install plugin.ini file'
+ fi
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}