Parent page: [[InternetAndNetworking| Internet and Networking]] ||<>|| The Citrix ICA Client (Citrix Receiver) allows access to remote Windows sessions run on a Citrix server. The instructions on this page are for old versions of Ubuntu/ICA. Instructions for current/recent versions are at [[CitrixICAClientHowTo]]. If you are using the '''XenApp web plugin''', which is NOT exactly the same as the ICA Client, you should also see this page: [[CitrixXenAppPlugin]]. You will need you will need to have '''libxaw7''' installed, but no wfcmgr (the Citrix ICA Client executable) and OpenMotif. If you are considering deployment of the Receiver in your workplace (as opposed to installation on just your machine), have a look at [[https://wiki.ubuntu.com/Enterprise/Remote/CitrixReceiver|the Citrix Receiver deployment how-to]] in the [[https://wiki.ubuntu.com/Enterprise|Ubuntu for the Enterprise wiki]]. If you are running KDE 4.10 or a newer version, you need to make sure that in System Settings that GTK is set to a theme '''other than Oxygen''' as this will cause the Citrix Receiver to constantly crash when trying to launch fullscreen applications (such as Terminal Servers or VDI). = Citrix Receiver 13.0 on Ubuntu 14.04 & 13.10 64-bit = = More automated installation script using copy-paste == [[http://mark911.wordpress.com/2014/06/27/how-to-install-citrix-receiver-icaclient-in-ubuntu-14-04-lts-64-bit-tested-and-working-using-mozilla-firefox/|How to install Citrix Receiver icaclient in Ubuntu 14.04 LTS 64-bit – tested and working using Mozilla Firefox]] = Manual installation procedure == == 1. Enable i386 Multiarch == {{{ sudo dpkg --add-architecture i386 # only needed once sudo apt-get update }}} == 2. Check out a fixed version of the .deb == {{{ git clone https://github.com/CloCkWeRX/citrix-receiver-ubuntu-fixed.git ica_temp dpkg -b ica_temp icaclient-modified.deb }}} Skip to step 4 == 2. (Manual alternative) Get the official Citrix Receiver 13.0 .deb == from: [[https://www.citrix.com/downloads/citrix-receiver/linux/receiver-for-linux-130.html]] ''Note: Get the download from the "For 64-bit Systems" section. The Download popup doesn't work in chrome, use Firefox.'' == 3. (Manual alternative) Fix the broken .deb package manually == The .deb package is broken. You can fix it using the following commmands: {{{ cd ~/Downloads mkdir icaclient.temp/ dpkg-deb -x icaclient_*.deb icaclient.temp/ dpkg-deb --control icaclient_*.deb icaclient.temp/DEBIAN/ # These perl commands simply change: # Depends: libc6-i386 (>= 2.7-1), ia32-libs, lib32z1, lib32asound2, nspluginwrapper # in icaclient.temp/DEBIAN/control to: # Depends: libc6:i386 (>= 2.7-1), zlib1g:i386, libasound2:i386, nspluginwrapper, libxerces-c3.1:i386 perl -i -pe 's/Depends: (.+, )?libc6-i386(, .+)?/Depends: $1libc6:i386$2/' icaclient.temp/DEBIAN/control perl -i -pe 's/Depends: (.+, )?ia32-libs(, (.+))?/Depends: $1$3/' icaclient.temp/DEBIAN/control perl -i -pe 's/Depends: (.+, )?lib32z1(, .+)?/Depends: $1zlib1g:i386$2/' icaclient.temp/DEBIAN/control perl -i -pe 's/Depends: (.+, )?lib32asound2(, .+)?/Depends: $1libasound2:i386$2/' icaclient.temp/DEBIAN/control perl -i -pe 's/^Depends: (.+)$/Depends: $1, libxerces-c3.1:i386/' icaclient.temp/DEBIAN/control dpkg -b icaclient.temp/ icaclient-modified.deb rm -rf icaclient.temp/ mkdir ctxusb.temp/ dpkg-deb -x ctxusb_*.deb ctxusb.temp/ dpkg-deb --control ctxusb_*.deb ctxusb.temp/DEBIAN/ # This perl command simply changes: # Depends: libc6 (>= 2.7-1), libcap1 | libcap2, udev, lsb-base, icaclient # in ctxusb.temp/DEBIAN/control to: # Depends: libc6 (>= 2.7-1), libcap1:i386 | libcap2:i386, udev, lsb-base, icaclient perl -i -pe 's/ libcap(\d)/ libcap$1:i386/g if m/Depends: /' ctxusb.temp/DEBIAN/control dpkg -b ctxusb.temp/ ctxusb-modified.deb rm -rf ctxusb.temp/ }}} == 4. Install the fixed packages and their dependencies == {{{ sudo dpkg -i icaclient-modified.deb ctxusb-modified.deb sudo apt-get -f install # Install dependencies }}} == 5. Add more SSL certificates == Some sites can give an SSL error. Firefox has many more certificates than does Citrix, so add them: e.g. {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ sudo c_rehash /opt/Citrix/ICAClient/keystore/cacerts }}} == 6. Accessing your PC Drive == To set up Citrix Receiver Preferences use: {{{ /opt/Citrix/ICAClient/util/configmgr & }}} Under the tab "File Access" you can add a Mapped Drive. == 7. Configure Chrome/Chromium == To use Citrix Receiver in Chrome and/or Chromium, run: {{{ xdg-mime default wfica.desktop application/x-ica }}} == 8. Citrix Plugin in Firefox == For Citrix XenApp web servers offering native integration, make sure that the Citrix Receiver for Linux plugin is set to Always Activate. On or prior to Firefox 32, plugins are set to Ask to Activate by default, and the XenApp web application does not prompt the user for activation when an icon is clicked. == 9. Possible problem - invisible/corrupted windows == Some people have experienced that applications started via Citrix Receiver 13.0 do not show their windows properly - just random fragments appear. It is not clear if this is a bug in the graphics library that Citrix has adopted with this version and/or its interaction with certain Citrix server configurations. If you experience this, you are likely to have better success with version 12.1, see below. = Citrix Receiver 12.1 on Ubuntu 14.04 64-bit = == 0. Add i386 multiarch == {{{ sudo dpkg --add-architecture i386 # only needed once sudo apt-get update }}} == 1. Install the dependencies == `libmotif4:i386 nspluginwrapper lib32z1 libc6-i386 libxp6:i386 libxpm4:i386 libasound2:i386` by executing the following command: {{{ sudo apt-get install libmotif4:i386 nspluginwrapper lib32z1 libc6-i386 libxp6:i386 libxpm4:i386 libasound2:i386 }}} == 2. Get the official Citrix Receiver 12.1 .deb == from: [[ https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/receiver-for-linux-121.html]] ''Note: Get the download from the "For 64-bit Systems" section. If the Download popup doesn't work in Chrome, use Firefox.'' == 3. Fix the broken .deb package == The .deb package is broken. You can fix it using the following commmands: {{{ cd ~/Downloads mkdir ica_temp dpkg-deb -x icaclient_12.1.0_amd64.deb ica_temp dpkg-deb --control icaclient_12.1.0_amd64.deb ica_temp/DEBIAN gedit ica_temp/DEBIAN/control }}} And change the line that starts with "Depends: ..." to: {{{ Depends: libc6-i386 (>= 2.7-1), lib32z1, nspluginwrapper, libxp6:i386, libxpm4:i386 }}} Now, change the `postinst` script: {{{ gedit ica_temp/DEBIAN/postinst }}} And change line 2648 from: {{{ echo $Arch|grep "i[0-9]86" >/dev/null }}} to: {{{ echo $Arch|grep -E "i[0-9]86|x86_64" >/dev/null }}} (Note the -E flag!) Now rebuild the package {{{ dpkg -b ica_temp icaclient-modified.deb }}} == 4. Install the fixed package == {{{ sudo dpkg -i icaclient-modified.deb }}} == 5. Add more SSL certificates == Some sites can give an SSL error. Firefox has many more certificates than does Citrix, so add them: e.g. {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ }}} == 6. Accessing your PC Drive etc == To run the Citrix Receiver Preferences use: {{{ /opt/Citrix/ICAClient/wfcmgr & }}} Under Tools | Settings you can select the Preferences dropdown, then Drive Mapping, and add a Mapped Drive, or set other preferences. Alternatively, you may run your Citrix terminal by logging in from a browser, then clicking on the icon in the middle of the green screen and then saving the *.ica to your ~/Downloads directory and then run following command from the terminal {{{ /opt/Citrix/ICAClient/wfica.sh ~/Downloads/launch.ica }}} If wfica.sh complains for launch.ica access permissions, please allow others to read-write. == Citrix Plugin in Firefox == For Citrix XenApp web servers offering native integration, make sure that the Citrix Receiver for Linux plugin is set to Always Activate. On or prior to Firefox 32, plugins are set to Ask to Activate by default, and the XenApp web application does not prompt the user for activation when an icon is clicked. = Citrix Receiver 12.1 on Ubuntu 13.10 64-bit = == 1. Install the dependencies == `libmotif4:i386 nspluginwrapper lib32z1 libc6-i386 libxp6:i386 libxpm4:i386` by executing the following command: {{{ sudo apt-get install libmotif4:i386 nspluginwrapper lib32z1 libc6-i386 libxp6:i386 libxpm4:i386 }}} == 2. Get the official Citrix Receiver 12.1 .deb == from: [[ https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/receiver-for-linux-121.html]] ''Note: Get the download from the "For 64-bit Systems" section. If the Download popup doesn't work in Chrome, use Firefox.'' == 3. Fix the broken .deb package == The .deb package is broken. You can fix it using the following commmands: {{{ cd ~/Downloads mkdir ica_temp dpkg-deb -x icaclient_12.1.0_amd64.deb ica_temp dpkg-deb --control icaclient_12.1.0_amd64.deb ica_temp/DEBIAN gedit ica_temp/DEBIAN/control }}} And change the line that starts with "Depends: ..." to: {{{ Depends: libc6-i386 (>= 2.7-1), lib32z1, nspluginwrapper, libxp6:i386, libxpm4:i386 }}} Now, change the `postinst` script: {{{ gedit ica_temp/DEBIAN/postinst }}} And change line 2648 from: {{{ echo $Arch|grep "i[0-9]86" >/dev/null }}} to: {{{ echo $Arch|grep -E "i[0-9]86|x86_64" >/dev/null }}} (Note the -E flag!) Now rebuild the package {{{ dpkg -b ica_temp icaclient-modified.deb }}} == 4. Install the fixed package == {{{ sudo dpkg -i icaclient-modified.deb }}} == 5. Add more SSL certificates == Some sites can give an SSL error. Firefox has many more certificates than does Citrix, so add them: e.g. {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ }}} == 6. Accessing your PC Drive etc == To run the Citrix Receiver Preferences use: {{{ /opt/Citrix/ICAClient/wfcmgr & }}} Under Tools | Settings you can select the Preferences dropdown, then Drive Mapping, and add a Mapped Drive, or set other preferences. = Citrix Receiver 12.1 on Ubuntu 13.04 64-bit = 1. Install packages `libmotif4:i386 nspluginwrapper` Either by executing the following command: {{{ sudo apt-get install libmotif4:i386 nspluginwrapper }}} Or by installing `Open Motif - shared libraries` using your package manager of choice (e.g., Ubuntu Software Centre). 2. Get the official Citrix Receiver 12.1 .deb from [[https://www.citrix.com/downloads/citrix-receiver/receivers-by-platform/receiver-for-linux-121.html]] Note: Get the download from the "For 64-bit Systems" section. 3. Install the downloaded .deb running the following command in the folder where you stored the download (note the version of the downloaded file may differ if it's more recent that these instructions): {{{ sudo dpkg --install Downloads/icaclient_12.1.0_amd64.deb }}} This installation will likely throw the following error: {{{ dpkg: error processing icaclient (--install): subprocess installed post-installation script returned error exit status 2 Errors were encountered while processing: icaclient }}} This can be resolved by changing line 2648 in /var/lib/dpkg/info/icaclient.postinst: {{{ echo $Arch|grep "i[0-9]86" >/dev/null }}} to: {{{ echo $Arch|grep -E "i[0-9]86|x86_64" >/dev/null }}} Then execute the following command: {{{ sudo dpkg --configure icaclient }}} 4. Try accessing your site. You may find that this gives an SSL error, that you do not trust the relevant site. Firefox has many more certificates than does Citrix, so add them: e.g. {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ }}} TODO: add options for other browsers. = Citrix ICA Client 12.1 on Ubuntu 12.10 64-bit = 1. Install packages `libmotif4 flashplugin-installer curl nspluginwrapper ia32-libs` using your package manager of choice (e.g., `aptitude`). Note that just installing package=`libmotif4` worked for me (Dec 2012); I did not need to subsequently make symlinks in `/usr/bin` (as noted in other sections below). 2. Get the Citrix Receiver 12.1 .deb, either * [[http://www.citrix.com/downloads/citrix-receiver/legacy-client-software/receiver-for-linux-120.html|the broken, but official, one from Citrix]] (see below how to fix) * [[https://help.ubuntu.com/community/CitrixICAClientHowTo?action=AttachFile&do=view&target=icaclient_12.1.0_amd64.deb|a fixed one]] from help.ubuntu.com 3. Install the downloaded .deb via, e.g., {{{ sudo dpkg -i icaclient_12.1.0_amd64.deb }}} This will probably fail, but `dpkg` will tell you what dependencies are unsatisfied. So install those packages, and remove package=`icaclient_12.1.0` if your package manager (e.g., `aptitude`) wants to. Then reinstall `icaclient_12.1.0_amd64.deb`; loop if required. 4. Firefox has many more certificates than does Citrix, so add them: e.g. {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/ }}} TODO: add options for other browsers. 5. Try accessing your Citrix site (in my case, [[https://csg.unch.unc.edu/|here]]). Note that Firefox 17 will open `launch.ica` in an editor! but I'm able to access my site, login, and access applications. = Citrix ICA Client 12 on Ubuntu 12.04 64-bit = Install the 32-bit version of Citrix client. You can find the .deb from the citrix download page. Hooray for multi-arch! If you want to use wfcmgr, install required library: {{{ sudo apt-get install libmotif4:i386 }}} == Configuring Firefox == Attempt to access your Citrix site. If Firefox prompts you to open a *.ica file, choose to open it with /opt/Citrix/ICAClient/wfica.sh, and tell Firefox to remember that choice. == Missing Certificates == Note that the ICA client for linux is missing lots of certificates - you may need to copy in your CA's root certificates, e.g. {{{ sudo cp /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts }}} == Video Refresh Issue == If you experience strange video refresh, e.g. strange screen paint behaviour, it may be because of an apparent conflict with compiz and the ICA client. To work around, sign out and change your desktop session from 'unity' to 'unity-2d'. This issue appears to be related to AMD64 (e.g. Bulldozer), and some Radeon video chips. = Citrix ICA Client 12.1 on Ubuntu 11.10 64-bit = This is available as a .deb from the Citrix site: http://www.citrix.com/English/SS/downloads/details.asp?downloadId=2323812&productId=1689163 Beware - this should be used with caution as it will install with an error. The postinst script exits 2 as it fails to correctly determine the architecture of the system. The ICAClient package will function, but APT will complain that ICAClient is "not fully installed or removed" and you will get errors each time you use a package manager. This can be fixed by unpacking the .deb and editing the regular expression in line 2648 of the postinst script to match x86_64. Replace '''grep "i[0-9]86i"''' with '''grep -E "i[0-9]86i|x86_64"'''. Then rebuild the .deb (or use [[attachment:icaclient_12.1.0_amd64.deb| this rebuilt .deb]]). Alternatively /var/lib/dpkg/info/icaclient.postinst can be edited after an installation that gives an error and {{{ apt-get -f install }}} can be run afterwards. Note that although flagged as a 64-bit package, this will simply pull in the required compatibility libs - it is not a true 64-bit version. = Citrix ICA Client 12.1 on Ubuntu 11.10 32-bit = Download and install the 32-bit version of libmotif 3 and create a symlink: {{{ wget -c http://nl.archive.ubuntu.com/ubuntu/pool/multiverse/o/openmotif/libmotif3_2.2.3-4_i386.deb dpkg -i libmotif*i386.deb ln -s /usr/lib/libXm.so.3 /usr/lib/libXm.so.4 }}} Download the Citrix Receiver 12.1 .deb files for 'Receiver for Linux 12.1' and the 'USB Support Package' from: http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2323812&productId=1689163 Install the .deb files with the Ubuntu Software Manager. Install or update the Adobe Flash Player plugin and update cURL for HDX Flash redirection. {{{ sudo apt-get install flashplugin-installer sudo apt-get install curl }}} Run hdxcheck.sh, which was installed with the Citrix Receiver: /opt/Citrix/ICAClient/util/hdxcheck.sh Look back through the messages displayed to check that it found libjpeg.so, as it might fail to do so despite it being installed. If it failed to find it then you can edit /opt/Citrix/ICAClient/util/hdxcheck.sh and change Lib=`find *libjpeg.so*` to Lib=`find / -name *libjpeg.so*` == Configuring Firefox == Attempt to access your Citrix site. If Firefox prompts you to open a .ica file, choose to open it with /opt/Citrix/ICAClient/wfica.sh, and tell Firefox to remember that choice. You might see the following error when accessing remote sessions: <
> {{{ Citrix Receiver SSL error Contact your help desk with the following information: You have not chosen to trust"/C=US/ST=/L=/O=Equifax/OU=Equifax Secure Certificate Authority/CN=", the issuer of the server's security certificate ((SSL error 61). }}} <
> If you see the above error, make Firefox's certificates accessible to Citrix using the following: {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts }}} = Citrix ICA Client 12 on Ubuntu 11.10 32-bit and 64-bit = Install the appropriate 32-bit or 64-bit Citrix client .deb from the download page (currently [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2316611&productId=1689163|here]]) Secondary click the file and click Open with "Ubuntu Software Center". To prevent the following error when accessing remote sessions: <
> {{{ Citrix Receiver SSL error Contact your help desk with the following information: You have not chosen to trust"/C=US/ST=/L=/O=Equifax/OU=Equifax Secure Certificate Authority/CN=", the issuer of the server's security certificate ((SSL error 61). }}} <
> Make Firefox's certificates accessible to Citrix, e.g., {{{ sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts }}} = Citrix ICA Client 11 on Ubuntu versions 8.04 - 11.10 = == 32-bit == Install Citrix's 32-bit client from its linux clients download page (currently [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2316611&productId=1689163|here]]), then add any needed libraries and make them work with your system. === install client === Install the 32-bit Citrix client. This can be done in at least 2 ways: ==== debian package ==== To install the [[http://en.wikipedia.org/wiki/Debian_package|debian package]]: 1. Download the debian package (currently [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2316611&productId=1689163|here]]) to a temporary directory, e.g. /tmp/citrix 1. Install the debian package, with, e.g.,<
> {{{ sudo dpkg -i /tmp/citrix/icaclient_12.0.0_i386.deb }}} ==== tarball ==== 1. Download the linux client tarball (currently [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2316611&productId=1689163|here]]) to some temp dir, e.g. /tmp/citrix 1. Extract the tarball, e.g. (change parameters as necessary)<
> {{{ DOWNLOAD_DIR="/tmp/citrix" TARBALL_FN="linuxx86-11.0.140395.tar.gz" pushd ${DOWNLOAD_DIR} tar xfz ${TARBALL_FN} # add '> /dev/null' for quiet }}} 1.#3 From the download directory, run the text-mode installer<
> {{{ sudo ./setupwfc }}} 1.#4 Take the option to "Install Citrix Receiver" 1.#5 Install to<
> {{{ /usr/lib/ICAClient }}} Choose additional options as needed, and quit the installer. === test installed client === 1. Check to see that the installer created * the executable '''/usr/lib/ICAClient/wfcmgr''' * a launcher like '''Applications>Internet>Citrix Receiver''' or '''Internet>Citrix Receiver''' 1. Check that '''/usr/lib/ICAClient/wfcmgr''' has needed libraries, e.g. {{{ CLIENT_EXEC="/usr/lib/ICAClient/wfcmgr" ldd ${CLIENT_EXEC} }}} You will probably get results like {{{ linux-gate.so.1 => (0xf77a3000) libXm.so.4 => not found libXp.so.6 => /usr/lib32/libXp.so.6 (0xf777f000) libXpm.so.4 => /usr/lib32/libXpm.so.4 (0xf776c000) libSM.so.6 => /usr/lib32/libSM.so.6 (0xf7763000) libICE.so.6 => /usr/lib32/libICE.so.6 (0xf7748000) libXmu.so.6 => /usr/lib32/libXmu.so.6 (0xf772f000) libdl.so.2 => /lib32/libdl.so.2 (0xf772b000) libpthread.so.0 => /lib32/libpthread.so.0 (0xf7712000) libc.so.6 => /lib32/libc.so.6 (0xf75cd000) libXt.so.6 => /usr/lib32/libXt.so.6 (0xf757a000) libX11.so.6 => /usr/lib32/libX11.so.6 (0xf744b000) libXext.so.6 => /usr/lib32/libXext.so.6 (0xf743b000) libXau.so.6 => /usr/lib32/libXau.so.6 (0xf7437000) libuuid.so.1 => /lib32/libuuid.so.1 (0xf7431000) /lib/ld-linux.so.2 (0xf77a4000) libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf7413000) libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf740e000) }}} Note the '''not found''' above. If you don't get one of those, try just running '''/usr/lib/ICAClient/wfcmgr''': if that launches the Citrix Receiver with no errors, you're done, and you can probably exit these instructions. If not, proceed to next step. === install 32-bit libraries === Install all needed 32-bit libraries, e.g. '''libXm.so.4''' 1. Install motif and create a symlink to the latest similar library<
> {{{ sudo aptitude install libmotif3 ls -al /usr/lib/libXm.so* # if the latest version is libXm.so.3.0.2, then sudo ln -s /usr/lib/libXm.so.3.0.2 /usr/lib/libXm.so.4 }}} 1.#2 Repeat running '''ldd''' until all libraries are found. I.e.<
> {{{ CLIENT_EXEC="/usr/lib/ICAClient/wfcmgr" ERROR_STRING='not found' ldd ${CLIENT_EXEC} | fgrep -e "${ERROR_STRING}" }}} should produce no output. === Run client === 1. Run the native client from a terminal, e.g. {{{ /usr/lib/ICAClient/wfcmgr }}} The Citrix Receiver should launch with no errors. Choose Connections>Exit to quit the native client.<
> If you see errors in the terminal, use the terminal messages to guide your efforts. You may need to repeat steps above. 1.#2 Run the client from the Ubuntu launcher noted above, e.g., '''Applications>Internet>Citrix Receiver''' or '''Internet>Citrix Receiver''' == 64-bit == If Citrix provides a 64-bit client at its linux clients download page (currently [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2309164&productId=1689163&ntref=clientcenter|here]]) download and install that. Unfortunately, at the moment (25 Aug 2011) it does not, so you will need to also install 32-bit libraries and make them work with your 64-bit system. 1. Install the 32-bit Citrix client. 1. Install ia32 libraries which are needed during installation {{{ sudo apt-get install ia32-libs }}} 1.#2 Install the linux client tarball. (Note: as of 25 Aug 2011 Citrix supplies a .deb as well as a .rpm and tarball. While I was able to install the .deb, I could not subsequently run the Citrix Receiver it installed. However I was able to run the Citrix Receiver successfully after installing the tarball.) 1. Download the linux client tarball (from [[http://www.citrix.com/English/ss/downloads/details.asp?downloadId=2309164&productId=1689163&ntref=clientcenter|here]]) to some temp dir, e.g. /tmp/citrix 1. Extract the tarball, e.g. (change parameters as necessary) {{{ DOWNLOAD_DIR="/tmp/citrix" TARBALL_FN="linuxx86-11.100.158406.tar.gz" mkdir -p ${DOWNLOAD_DIR} pushd ${DOWNLOAD_DIR} tar xfz ${TARBALL_FN} # add '> /dev/null' for quiet }}} 1.#3 From the download directory, run the text-mode script {{{ sudo ./setupwfc }}} 1.#4 Take the option to "Install Citrix Receiver", then install to the default directory {{{ /usr/lib/ICAClient }}} 1.#5 Check that the executable /usr/lib/ICAClient/wfcmgr was created (and also Applications>Internet>Citrix Receiver, though that's just a link). 2. Check that the executable /usr/lib/ICAClient/wfcmgr has needed libraries, e.g. {{{ CLIENT_EXEC="/usr/lib/ICAClient/wfcmgr" ldd ${CLIENT_EXEC} }}} You will probably get results like {{{ linux-gate.so.1 => (0xf77a3000) libXm.so.4 => not found libXp.so.6 => /usr/lib32/libXp.so.6 (0xf777f000) libXpm.so.4 => /usr/lib32/libXpm.so.4 (0xf776c000) libSM.so.6 => /usr/lib32/libSM.so.6 (0xf7763000) libICE.so.6 => /usr/lib32/libICE.so.6 (0xf7748000) libXmu.so.6 => /usr/lib32/libXmu.so.6 (0xf772f000) libdl.so.2 => /lib32/libdl.so.2 (0xf772b000) libpthread.so.0 => /lib32/libpthread.so.0 (0xf7712000) libc.so.6 => /lib32/libc.so.6 (0xf75cd000) libXt.so.6 => /usr/lib32/libXt.so.6 (0xf757a000) libX11.so.6 => /usr/lib32/libX11.so.6 (0xf744b000) libXext.so.6 => /usr/lib32/libXext.so.6 (0xf743b000) libXau.so.6 => /usr/lib32/libXau.so.6 (0xf7437000) libuuid.so.1 => /lib32/libuuid.so.1 (0xf7431000) /lib/ld-linux.so.2 (0xf77a4000) libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf7413000) libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf740e000) }}} Note the '''not found''' above. If you don't get one of those, try just running /usr/lib/ICAClient/wfcmgr: if that launches the Citrix Receiver, you're done, and you can probably exit these instructions. If not, 1. Download 32-bit libraries (changing parameters in the following as necessary): {{{ SOURCE_DIR="/tmp/motif" TARGET_DIR="/usr/lib32" DEB_URI="http://ftp.ubuntu.com/ubuntu/pool/multiverse/o/openmotif/libmotif3_2.2.3-2_i386.deb" DEB_FN="$(basename ${DEB_URI})" DEB_FP="${SOURCE_DIR}/${DEB_FN}" mkdir -p ${SOURCE_DIR} mkdir -p ${TARGET_DIR} # should be there already pushd ${SOURCE_DIR} wget -O ${DEB_FN} ${DEB_URI} dpkg -x ${DEB_FN} ${SOURCE_DIR} sudo cp -r ${SOURCE_DIR}/usr/lib/* ${TARGET_DIR}/ }}} 1.#2 Link to 32-bit libraries as needed. E.g., for the error {{{ libXm.so.4 => not found }}} above, check to see that a similarly-named library exists among your 32-bit libraries, and link to that. E.g. {{{ MISSING_LIB_NAME="libXm.so.4" MISSING_LIB_BASE="libXm.so" TARGET_DIR="/usr/lib32" SOURCE_DIR="/usr/lib" find ${TARGET_DIR} -name "${MISSING_LIB_BASE}*" | xargs ls -al sudo ln -s ${TARGET_DIR}/libXm.so.3.0.2 ${TARGET_DIR}/${MISSING_LIB_NAME} }}} 1.#3 Rerun `ldd` and loop the previous steps until {{{ CLIENT_EXEC="/usr/lib/ICAClient/wfcmgr" ERROR_STRING='not found' ldd ${CLIENT_EXEC} | fgrep -e "${ERROR_STRING}" }}} produces no output. 3. Run the client from a terminal, e.g. {{{ ${CLIENT_EXEC} }}} You should get no errors; if you do, use the terminal messages to guide your efforts. You may need to repeat steps above. For 11.10 I had to use {{{ DEB_URI="http://ftp.ubuntu.com/ubuntu/pool/multiverse/o/openmotif/libmotif4_2.3.3-5ubuntu1_i386.deb" }}} and {{{ libXm.so.4.0.3 }}} as library. Adjust the preceding instructions accordingly. If you're having trouble at this point, ensure that appropriate file permissions are assigned to `/usr/lib32/libXm.so.3.0.2`. For example, if you are using a umask setting that is more restrictive than the default value of `022` (such as umask `027`), you may find that `/usr/lib32/libXm.so.3.0.2` is set to mode `640` (`-rw-r-----`) instead of `644` (`-rw-r--r--`). If this is the case, Citrix Receiver will not find `libXm.so.4`. Change the file permissions to `644`: {{{ sudo chmod 644 /usr/lib32/libXm.so.3.0.2 }}} 4. If you persistently get "libXm.so.4 => not found" update the run-time linker cache by running., {{{ $ sudo ldconfig }}} 5. Run the client from the launcher, e.g. Applications>Internet>Citrix Receiver === Configuring Firefox === 1. Ensure the ICAClient plugin is linked in, e.g., {{{ $ sudo ls -al /opt/firefox/plugins/ lrwxrwxrwx 1 root root 27 Aug 25 20:11 npica.so -> /usr/lib/ICAClient/npica.so }}} 2. Wrap the plugin, e.g., {{{ $ sudo nspluginwrapper -i /usr/lib/ICAClient/npica.so }}} 3. Make Firefox's certificates accessible to Citrix, e.g., {{{ sudo cp /usr/share/ca-certificates/mozilla/* /usr/lib/ICAClient/keystore/cacerts/ }}} 4. Attempt to access your Citrix site. If Firefox prompts you to open a *.ica file, choose to open it with ''/usr/lib/ICAClient/wfica.sh'', and tell Firefox to remember that choice. == Java == Citrix may require a Java browser plugin on the client side. In Ubuntu (10.04 - 11.04), the default plugin is the ''icedtea-plugin'' (available in the repositories). However, in my case, Citrix Receiver refused to work with the icedtea-plugin. I installed sun-java6-plugin instead (it's not in the default repositories, see [[Java#Sun_Java]], and it worked. (This is to be confirmed by other users.) = Citrix ICA Client 10.6 = == Download Citrix client 10.6 == http://www.citrix.com/English/SS/downloads/downloads.asp?dID=2755 or http://www.citrix.com/ and click on 'Download' Click on "Linux ICA Clients." Download this item: Version 10.6 English 6/28/07 1.8 mb .tar.gz x86 client - requires OpenMotif 2.2.x == Install Prerequisite Software == In a terminal window: {{{ sudo aptitude install libmotif3 sudo aptitude install libxaw7 }}} == Expand Zip file and Install == Move the .tar.gz file to a temporary folder and extract installation files. For example, assuming you downloaded to your Desktop: {{{ mkdir /tmp/citrix-install cd /tmp/citrix-install mv ~/Desktop/en.linuxx86.tar.gz ./ tar xvf en.linuxx86.tar.gz }}} Now, install the Citrix Client {{{ sudo ./setupwfc }}} When you see the menu: ''Select a setup option:'' ''1. Install Citrix Presentation Server Client 10.6'' ''2. Remove Citrix Presentation Server Client 10.6'' ''3. Quit Citrix Presentation Server Client 10.6 setup'' Type "1" (without the quotes) and hit enter. Choose the defaults and accept the license. And yes, you want to integrate with KDE and Gnome. Finally, at the setup menu, choose: ''3. Quit Citrix Presentation Server Client 10.6 setup'' == Put wfica and wfcmgr on the Search Path == Create links in a folder that is on the search path {{{ sudo ln -s /usr/lib/ICAClient/wfica /usr/local/bin/wfica sudo ln -s /usr/lib/ICAClient/wfcmgr /usr/local/bin/wfcmgr }}} == Using the Citrix Client 10.6 == This will now be enabled for use with a Citrix Web Interface - without any further action. If you do not use a Web Interface system, configure the client using the Configuration Manager {{{ /usr/lib/ICAClient/wfcmgr & }}} (You can download the 'Admin Guide' from the download location - see above.) Note: If wfcmgr doesn't launch in Gutsy, there may be a problem with the loading of fonts See http://ubuntuforums.org/showthread.php?t=591450&highlight=citrix In summary, edit /etc/X11/xorg.conf and change '/usr/share/X11/fonts/' to '/usr/share/fonts/X11' = Citrix Client 10 on Dapper = This following guide is written for Dapper. It works for the author, but YMMV. == Download the Citrix ICA Client RPM == Locate and download the latest (currently version 10.0) ICA Linux client RPM from: http://www.citrix.com/lang/English/downloads.asp == Convert the RPM package to .deb == Install the 'alien' package: {{{ sudo apt-get install alien }}} Create the .deb {{{ alien ICAClient-10.0-2.i386.rpm }}} This will create the file 'icaclient-10.0-2.i386.deb' == Install the .deb == {{{ sudo dpkg -i icaclient-10.0-2.i386.deb }}} == Install the motif libraries == {{{ sudo apt-get install libmotif3 }}} '''Kubuntu only:''' install libxp6 {{{ sudo apt-get install libxp6 }}} == Firefox PNAgent ICA Plugin == Symlink the PNAgent ICA plugin for Firefox {{{ sudo ln -s /usr/lib/ICAClient/npica.so /usr/lib/firefox/plugins/npica.so }}} == Client Setup == You should now be able to configure the client by running: {{{ /usr/lib/ICAClient/wfcmgr }}} Setup a new connection from: '''Tools -> Settings -> Preferences''' (pull down to) '''Server Location''' (Your network admin should be able to supply the details) Configure the server options: '''Connection -> New -> Network''' (Again, your network admin should be able to supply the details) Configure display options: '''Connection -> Properties -> Network''' (pull down to) '''Window''' Select 16 million colors (if your vid card supports it) & Seamless Window Once the client is configured, you can launch the ICA client by running: {{{ /usr/lib/ICAClient/wfica }}} You also might like to update the PATH definition in /etc/environment to include /usr/lib/ICAClient Alternatively, create a symlink for wfica: {{{ sudo ln -s /usr/lib/ICAClient/wfica /usr/local/bin/wfica }}} = Accessing your PC Drive and Local Printer from a Citrix Session = == Printing == Your default Ubuntu printer should be available within the Citrix session automatically In Presentation Server 3/4, the name will be something like - 'PIXMA-IP4000 [UPD`:`PS] (from APAC-whcold_sin) in session 1' using driver 'HP Color Laser``Jet PS' If you do not see a printer like this, ask your Citrix Administrator to check that the 'HP Color Laser``Jet PS' driver is installed on the Presentation Server. == Accessing your PC Drive (Citrix Receiver v12 and earlier) == Run the Citrix Client Manager {{{ /usr/lib/ICAClient/wfcmgr & }}} || {{attachment:wfcmgr-drivemapping.png}} || Choose Tools/Settings/Preferences/Drive Mapping Choose settings similar to the attached screen-shot The Read & Write Access options have 3 settings - enabled, disabled(X), and prompt(?) Click the 'Apply' button, then 'OK' If you do NOT see a C: drive in your Citrix session - or it is already being used for another drive - don't worry - you will see your Ubuntu folder in Windows Explorer under ''My Network Places - Entire Network - Client Network - \\Client - \\Client\C$''. At the command prompt or in batch files, use the UNC ''\\Client\C$''.` ` Note: The C$ must be '''uppercase'''. You can do likewise with other drives - D:, E:, etc. and create drives ''\\Client\D$'', ''\\Client\E$'', etc. in your Citrix session. It is usual practice to assign A: and B: to floppy drives. ---- CategorySystem CategoryNetworking