Parent page: 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 the Citrix Receiver deployment how-to in the 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 ==
= 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
the broken, but official, one from Citrix (see below how to fix)
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, 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 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 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 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 debian package:
Download the debian package (currently here) to a temporary directory, e.g. /tmp/citrix
Install the debian package, with, e.g.,
sudo dpkg -i /tmp/citrix/icaclient_12.0.0_i386.deb
tarball
Download the linux client tarball (currently here) to some temp dir, e.g. /tmp/citrix
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
From the download directory, run the text-mode installer
sudo ./setupwfc
- Take the option to "Install Citrix Receiver"
Install to
/usr/lib/ICAClient
- Choose additional options as needed, and quit the installer.
test installed client
- Check to see that the installer created
the executable /usr/lib/ICAClient/wfcmgr
a launcher like Applications>Internet>Citrix Receiver or Internet>Citrix Receiver
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
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
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
- 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.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 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.
- Install ia32 libraries which are needed during installation
sudo apt-get install ia32-libs
- 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.)
Download the linux client tarball (from here) to some temp dir, e.g. /tmp/citrix
- 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
- From the download directory, run the text-mode script
sudo ./setupwfc
- Take the option to "Install Citrix Receiver", then install to the default directory
/usr/lib/ICAClient
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,
- 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}/
- 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}
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 LaserJet PS'
If you do not see a printer like this, ask your Citrix Administrator to check that the 'HP Color LaserJet 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 &
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.