diff options
-rw-r--r-- | media-plugins/hdx-realtime-media-engine/hdx-realtime-media-engine-2.9.500.2802-r1.ebuild | 88 | ||||
-rw-r--r-- | net-misc/icaclient/Manifest | 2 | ||||
-rw-r--r-- | net-misc/icaclient/icaclient-22.12.0.12.ebuild | 276 | ||||
-rw-r--r-- | net-misc/icaclient/metadata.xml | 3 |
4 files changed, 369 insertions, 0 deletions
diff --git a/media-plugins/hdx-realtime-media-engine/hdx-realtime-media-engine-2.9.500.2802-r1.ebuild b/media-plugins/hdx-realtime-media-engine/hdx-realtime-media-engine-2.9.500.2802-r1.ebuild new file mode 100644 index 000000000000..d72d760272eb --- /dev/null +++ b/media-plugins/hdx-realtime-media-engine/hdx-realtime-media-engine-2.9.500.2802-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit unpacker + +MY_PV="$(ver_cut 1-3)" + +DESCRIPTION="HDX RealTime Media Engine plugin for Citrix Workspace App" +HOMEPAGE="https://www.citrix.com/" +SRC_URI="amd64? ( HDX_RealTime_Media_Engine_${MY_PV}_for_Linux_x64.zip ) + x86? ( HDX_RealTime_Media_Engine_${MY_PV}_for_Linux.zip )" +LICENSE="icaclient" +SLOT="0" + +KEYWORDS="~amd64 ~x86" +RESTRICT="fetch mirror strip" + +BDEPEND="app-arch/unzip" +RDEPEND=" + sys-libs/llvm-libunwind + || ( + media-video/pipewire + media-sound/pulseaudio + media-sound/apulse + ) + !<net-misc/icaclient-22.12.0.12 +" + +ICAROOT="/opt/Citrix/ICAClient" +QA_PREBUILT="${ICAROOT#/}/*" + +S="${WORKDIR}/usr/local/bin" + +pkg_nofetch() { + elog "Download the client file ${A} from" + elog "https://www.citrix.com/de-de/downloads/citrix-receiver/additional-client-software/hdx-realtime-media-engine-ltsrcu-latest.html" + elog "and place it into your DISTDIR directory." +} + +pkg_setup() { + case ${ARCH} in + amd64) + zip_dir="x86_64" + zip_arch="amd64" + ;; + x86) + zip_dir="i386" + zip_arch="i386" + ;; + esac +} + +src_unpack() { + default + + local MY_T="${WORKDIR}/HDX_RealTime_Media_Engine_${MY_PV}_for_Linux$(usex amd64 '_x64' '')" + local deb_base_name="citrix-hdx-realtime-media-engine" + unpack_deb ${MY_T}/${zip_dir}/${deb_base_name}_$(ver_rs 3 -)_${zip_arch}.deb +} + +src_install() { + insinto "${ICAROOT}/rtme" + + # No, we do NOT install such a generic udev rule into the system + local destfiles=( + DialTone_US.wav + EULA.rtf + InboundCallRing.wav + ) + + local el + for el in "${destfiles[@]}" ; do + doins "${el}" + done + + exeinto "${ICAROOT}"/rtme + doexe RTMEconfig RTMediaEngineSRV + + for el in /var/{lib,log}/RTMediaEngineSRV /var/lib/Citrix/HDXRMEP ; do + keepdir ${el} + fperms a+rw ${el} + done + + insinto "${ICAROOT}" + doins HDXRTME.so +} diff --git a/net-misc/icaclient/Manifest b/net-misc/icaclient/Manifest index d736acc9ef0b..cd884c4189ea 100644 --- a/net-misc/icaclient/Manifest +++ b/net-misc/icaclient/Manifest @@ -1,6 +1,8 @@ DIST linuxx64-22.11.0.19.tar.gz 160489578 BLAKE2B ea6c5aab678746da64b0fa8329f5ffad871e5f42b4c6aa59f87daf6f8ca9a8901b690871376a79724fe835f9a9c026eb6bdf1ff55419ade62ebf472d25164dfa SHA512 5dab1616303f384d06ff6b2cc5c0ed0d9026745729ae503d03c7bddc6cebc536236c679d20886a94a2a241d1cfd96fd7fd766368ca779dacf0ff1785b36f5040 +DIST linuxx64-22.12.0.12.tar.gz 165269811 BLAKE2B 7735357f38d9438137792fc1d1febfdda6ca464fc43f573dffb4a33fffca052a78b8b61277cffd9287efcbc3823529e707140e7c9c1f9502c768528d2018b71d SHA512 bbe002d32e6d3819ab76ecef7fe7b62fff14da409d1b13c6edfc947cd46b0919d0f1972e7c1581d871bbe341ea50d3cf0da797f53f97b8e370610b37048f9a31 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.11.0.19.tar.gz 146472406 BLAKE2B b685de8438087a67011d78cb6b56cdeae18185477b179bd2419e240709cf8333410f774facddc17cf23042a99deca5c9f77c24034e2d0b0b4decc57c38f326fb SHA512 6a0160a6e88eda43dcdfccdfb29fbb6f73f335b6a0f41dc2715a741be8c1019d49b5f6de68e67b5af0a03fd27cca748d0b9db25ef7a1e66e54770bf9716af3fa +DIST linuxx86-22.12.0.12.tar.gz 147837116 BLAKE2B d5f1c53d1f2d2ecb95e67df256a667df733251a99dd4a5e9584554521c4f1b1fbd065dfd8b1c4ba344a543c5cd7dde4a939e3d4d82f658e7dae42c07527b645e SHA512 8e9c4262dcd7731b88ae43a663d5901a21a9ede2feed163b538f5fb475f0eba8768a08715db5e9c8fa809442140d1ef03d4d4e509cb83142bea806855615a6b3 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.12.0.12.ebuild b/net-misc/icaclient/icaclient-22.12.0.12.ebuild new file mode 100644 index 000000000000..399b2a4f22b1 --- /dev/null +++ b/net-misc/icaclient/icaclient-22.12.0.12.ebuild @@ -0,0 +1,276 @@ +# 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 hdx" +RESTRICT="mirror strip 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 +" +# when using media-plugins/hdx-realtime-media-engine we better not ignore that +REQUIRES_EXCLUDE="${REQUIRES_EXCLUDE} + !hdx? ( libunwind.so.1 ) +" +# 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 +" + +BEPEND=" + hdx? ( >=media-plugins/hdx-realtime-media-engine-2.9.500.2802-r1 ) +" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/libsecret + 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 + ${BDEPEND} + !hdx? ( !<media-plugins/hdx-realtime-media-engine-2.9.500.2802-r1 ) +" +DEPENDS="" + +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 + + cp nls/en/module.ini . + if use hdx; then + "${BROOT}${ICAROOT}"/rtme/RTMEconfig -install -ignoremm + mv new_module.ini module.ini + fi + mv module.ini config/ +} + +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 + doins 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 + + insinto /usr/share/mime/packages + doins desktop/Citrix-mime_types.xml +} + +pkg_preinst() { + # previous versions of the ebuild created that and left it around + # we own it now and avoid conflict warnings with this + rm -f "${ROOT}${ICAROOT}/config/module.ini" +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_mimeinfo_database_update + + if ! use hdx; then + if [ -x "${ROOT}${ICAROOT}"/rtme/RTMEconfig ]; then + ewarn "Starting from 22.12.0.12 you have to set USE=hdx if you want" + ewarn "to use media-plugins/hdx-realtime-media-engine. Which does" + ewarn "not need to be explicitly installed anymore." + fi + fi +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_mimeinfo_database_update +} diff --git a/net-misc/icaclient/metadata.xml b/net-misc/icaclient/metadata.xml index d86008401e21..83d0f6942931 100644 --- a/net-misc/icaclient/metadata.xml +++ b/net-misc/icaclient/metadata.xml @@ -9,4 +9,7 @@ <email>proxy-maint@gentoo.org</email> <name>Proxy Maintainers</name> </maintainer> + <use> + <flag name="hdx">Install and enable hdx-realtime-media-engine plugin</flag> + </use> </pkgmetadata> |