You are not logged in.
I've seen sporadic questions about citrix around here, and either everyone has figured it out or moved on to another distro. (Yes, some of us are forced to use citrix for our jobs).
Here is how I got the citrix ICA web browser plugin to work with Arch 64 and firefox.
Disclaimer: I'm not a programmer. There are probably better ways of doing this (... I should NOT be running yaourt as root, for instance), but I'm busy and only have so much time to troubleshoot.
Steps:
1. Install yaourt (makes installing aur packages easier)
2. Install nspluginwrapper (to run the 32-bit plugin in our 64 bit browser)
3. Install openmotif (citrix dependency)
4. Install lib32-xaw, lib32-libxp, lib32-libxpm (citrix dependencies) (PKGBUILDs need to be edited to work!!!)
5. Install citrix client as user
6. use nspluginwrapper to find the ICA plugin
***
1. Install yaourt (from AUR) here:
http://aur.archlinux.org/packages.php?ID=5863
2. Install 32 bit libraries and nspluginwrapper
# pacman -Sy --asdeps gtk2 lib32-atk lib32-cairo lib32-expat lib32-fontconfig lib32-freetype2 lib32-gcc-libs \
lib32-glib2 lib32-glibc lib32-gtk2 lib32-libice lib32-libpng lib32-libsm lib32-libx11 lib32-libxau \
lib32-libxcb lib32-libxcursor lib32-libxext lib32-libxfixes lib32-libxft lib32-libxi lib32-libxinerama \
lib32-libxmu lib32-libxrandr lib32-libxrender lib32-libxt lib32-pango lib32-pcre lib32-zlib libxt \
util-linux-ng lib32-alsa-lib lib32-libxdamage lib32-libstdc++5 rpmextract
# yaourt -S nspluginwrapper-beta
3. Install openmotif from AUR
# yaourt -S openmotif
4. Install lib32-xaw, lib32-libxp, and lib32-libxpm (citrix dependencies)
Unfortunately the lib32-libxaw and lib32-libxp PKGBUILDs contain outdated links. We will fix this as we go. The yaourt script downloads the PKGBUILD, then asks if you want to edit it before it builds the package. For lib32-libxp and lib32-libxaw we will paste in a new PKGBUILD, lib32-libxpm works as is.
# yaourt -S lib32-libxaw
==> WARNING: Building unsupported package as root is dangerous.
Please run yaourt as a non-privileged user.
==> Resuming previous build
==> Downloading lib32-libxaw PKGBUILD from AUR...
First Submitted: Tue, 21 Oct 2008 13:05:46 +0000
Last Updated: Wed, 29 Oct 2008 10:06:02 +0000
lib32-libxaw 1.0.4-2 (Unsupported): Allegro is a multi-platform game library
==> lib32-libxaw dependencies:
- lib32-libxmu (already installed)
- lib32-libxp (building from AUR)
- lib32-libxpm (building from AUR)
==> Edit the PKGBUILD (recommended) ? [Y/n]("A" to abort)
==> ----------------------------------------------
==>y
Please add \ to your environment variables
for example:
==> Edit PKGBUILD with:(replace gvim with your favorite editor)
==> Edit ./PKGBUILD with:nano
here we typed in "nano" to edit our PKGBUILD. When it opens in nano, delete the all lines (ctrl - k), then paste the following corrected PKGBUILD:
pkgname=lib32-libxaw
pkgname32=${pkgname/lib32-/}
pkgver=1.0.5
pkgrel=2
pkgrel32=1
pkgdesc="Allegro is a multi-platform game library"
arch=(x86_64)
url="http://alleg.sourceforge.net/"
license=('GPL')
groups=()
depends=(lib32-libxmu lib32-libxp lib32-libxpm)
makedepends=()
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
source=(ftp://ftp.archlinux.org/extra/os/i686/${pkgname32}-${pkgver}-${pkgrel32}-i686.pkg.tar.gz)
noextract=()
md5sums=('bb30b9c44307fd6376d7eb25be92de00')
build() {
mkdir -p $startdir/pkg/opt/lib32/usr/
cp -rPf $startdir/src/usr/lib $startdir/pkg/opt/lib32/usr/lib
}
"ctrl x" will save and exit, and it will ask if you want to install, choose yes, of course. Then yaourt will see that lib32-libxp and lib32-libxpm need to be installed. For lib32-libxp, it will once again download the PKGBUILD and ask if you want to edit it. choose y, and type in nano. When it opens in nano, delete all the lines and paste this corrected PKGBUILD:
pkgname=lib32-libxp
pkgname32=${pkgname/lib32-/}
pkgver=1.0.0
pkgrel=2
pkgrel32=2
pkgdesc="X11 X Print Library"
arch=(x86_64)
license=('GPL')
url="http://www.xmlsoft.org/"
groups=lib32
source=(ftp://ftp.archlinux.org/extra/os/i686/${pkgname32}-${pkgver}-${pkgrel32}-i686.pkg.tar.gz)
md5sums=('d1ba7ca5620ec0a03806cba518af8acf')
sha1sums=('69ebc0c07c5a86ed0ac3eec1c554ed64e36b22cb')
install-dir() {
mkdir -p $2
rmdir $2
cp -rPf $1 $2
}
lib32-install() {
install-dir $startdir/src/$1 $startdir/pkg/opt/lib32/$1
}
build() {
lib32-install usr/lib
}
it will then install and download the PKGBUILD for lib32-libxpm. This one points to the correct file and does not need to be edited, so you can allow yaourt to continue and finish installing.
5. Install the citrix client as user (not as root)
Download the ICA client from here:
ftp://download2.citrix.com/FILES/en/pro … x86.tar.gz
Make sure the directory .mozilla/plugins exists in your home directory before you start, and create it if it does not
Unpack the tarball
$ tar -xzvf en.linuxx86.tar.gz
Follow the Citrix setup program, I recommend using all the default settings
$ sh setupwfc
6. Tell nspluginwrapper to find the ICA plugin
$ nspluginwrapper -i /home/YOURUSERNAME/ICAClient/linuxx86/npica.so
Restart firefox, and you should be able to open citrix applications from firefox
Last edited by nsa141901 (2008-12-06 01:07:04)
Offline
and one more thing...
For those who wish to use the new 64 bit flash plugin (alpha but works fairly well), the package nspluginwrapper "conflicts" with flashplugin-alpha-64, but flashplugin-alpha-64 does not conflict with nspluginwrapper.
nspluginwrapper really does conflict with the 32 bit flashplugin, but not the new 64 bit one.
To get this working all you have to do is install nspluginwrapper before you install flashplugin-alpha-64
(edited)
Last edited by nsa141901 (2008-12-06 19:16:38)
Offline
I have not installed the 64-bit yet on my main pc, but once I do I will definately need this Citrix client!! Thanks for the post
Arch64, AMD64, LXDE
Offline
Thanks very much! I never thought about using nspluginwrapper for citrix! Been using a 32-bit chroot since I installed Arch. I could ditch the chroot now......except for that darn amazonmp3 downloader
FYI, on my installation, I did not need to install lib32-xaw, lib32-libxp, or lib32-libxpm. I also used the standard nspluginwrapper (not beta). It installed fine alongside my flashplugin-x86_64, which is the new 64-bit flash without having to worry about dependencies.
Scott
Offline
Thanks for that. I'd got as far as installing the libraries, but hadn't thought about nspluginwrapper
Might be worth a wiki article.
Offline
Might be worth a wiki article.
Absolutely worth it. Please put it up someone
[git] | [AURpkgs] | [arch-games]
Offline
Firecat53, i'm glad yours is up an running.
on my box, if lib32-libxaw is not installed I get the following error:
ICAClient/linuxx86/wfica: error while loading shared libraries: libXaw.so.7: wrong ELF class: ELFCLASS64
when installed it works
Offline
Has anyone tried to setup a package build for the Citrix Client, preferably native 64-bit?
Arch64, AMD64, LXDE
Offline
Posting here so i can find this later on
Offline
I appreciate the instructions. I downloaded this from AUR after installing openmotif. I was expecting to do like I did with OpenSUSE and that is to download the certificate and move it to the right folder. I of course can not do this because of security. I am sure I might be able to do this with the move command but that is a pain to do. I would love to do this using Dolphin but because only one version comes with Arch this is not possible to do. I guess I will try the nspluginwrapper and see if this helps.
Offline
Brilliant guys, thanks very much. Works a treat!
Russ
Offline
Guys, I cannot seem to locate "lib32-libxaw 1.0.5-1" anymore, I am supposing that it has been renamed or moved. Does anyone know where I can point the PKGBUILD so that I can get this working? Much appreciated!
Last edited by jeremyrainman (2009-07-20 20:43:56)
Offline
I would love to see this updated as well. Their is a wiki for this but it does not seem to work for me. I do not know if it is because I have used firebrand on my browser or what. I came from OpenSUSE and this had a simple install of Citrix and it was easy to connect. To bad this does not seem to work.
Offline
changed PKGBUILD to:
pkgname=lib32-libxaw
pkgname32=${pkgname/lib32-/}
pkgver=1.0.7
pkgrel=1
pkgrel32=1
pkgdesc="Allegro is a multi-platform game library"
arch=(x86_64)
url="http://alleg.sourceforge.net/"
license=('GPL')
depends=(lib32-libxmu lib32-libxp lib32-libxpm)
source=(http://www.mirrorservice.org/sites/ftp.archlinux.org/extra/os/i686/${pkgname32}-${pkgver}-${pkgrel32}-i686.pkg.tar.gz)
md5sums=('472d8337cedb291c62b8aaa8ce4a3bae')
build() {
mkdir -p $startdir/pkg/opt/lib32/usr/
cp -rPf $startdir/src/usr/lib $startdir/pkg/opt/lib32/usr/lib
}
Last edited by jeremyrainman (2009-11-25 18:23:11)
Offline
All - I very much appreciate all of the posts above. I followed the instructions here and have Citrix working on my Arch Linux 64 bit system with FireFox better than I have ever seen it work in Linux. So cool.
Offline
I have had the same problem, and I succeeded by installing the lib32-libxaw from jeremy's script and lib32-libxp lib32-libxpm from the AUR. Can someone verify that the current lib32-libxaw from the AUR works?
Because of the recurrent nature of this problem, I haved added the instructions above to the wiki page about Citrix.
Last edited by Revelation60 (2010-01-29 12:33:25)
Offline
I wanted to thank you for updating the wiki. It helped me out and I was using the 32 bit version of arch just to get this to work. I wiped my system clean last night and reinstalled it so I could see if this worked and it did. I do not follow the wiki for the part about installing the citrix-client as I get this from aur. I am happy that I can use the 64 bit version now and I appreciate the work that you did to make sure this worked.
Offline
lib32-libxaw is properly updated in the AUR. No need for the alterations to pkgbuild.
Offline
I'm getting the following error:
LoadPlugin: failed to initialize shared library /home/ty/.ICAClient/linuxx86/npica.so [/home/ty/.ICAClient/linuxx86/npica.so: wrong ELF class: ELFCLASS32]
I've never used nspluginwrapper so I I think I must have done something wrong here.
Offline
Hi,
I looking for help getting the "normal" client of citrix running on x86_64.
I'm the maintainer of citrix-PKGBUILD in AUR at the moment.
Because our citrix-server don't support http-connection I can't use the firefox plugin and therefore I'm trying to get the client working but I don't have an idea anymore.
Here is the latest PKGBUILD for x86_64:
# Maintainer: Andrwe <lord-weber-andrwe at renona-studios dot org>
pkgname=citrix-client
pkgver=11.100
pkgrel=2
pkgdesc="Provides XenApp(Citrix) for linux."
url="http://www.citrix.com"
arch=('i686' 'x86_64')
license=('CAL')
depends=('gtk2' 'libx11' 'libxaw' 'libxext' 'libxft' 'libxmu' 'libxp' 'libxpm' 'libxt' 'openmotif' 'printproto' 'xextproto')
[ "$CARCH" == "x86_64" ] && depends=('gtk2' 'lib32-libjpeg' 'lib32-libpng' 'lib32-libx11' 'lib32-libxaw' 'lib32-libxext' 'lib32-libxft' 'lib32-libxinerama' 'lib32-libxmu' 'lib32-libxp' 'lib32-libxpm' 'lib32-libxt' 'lib32-openmotif' 'lib32-printproto' 'xextproto')
source=('http://www.citrix.com//English/SS/downloads/EULA_p.asp?downloadID=3323&versionID=1862392&productID=186')
install=citrix-client.install
md5sums=('069bb3337791b0b55cbbf666c95403e5')
build() {
instdir="/usr/lib/ICAClient"
# Create folder structure
mkdir -p "${pkgdir}"/usr/lib/{ICAClient,mozilla/plugins}
mkdir -p "${pkgdir}"/usr/bin/
# copy needed files
cp -r ./linuxx86/linuxx86.cor/* "${pkgdir}${instdir}"/
cp ./setupwfc "${pkgdir}${instdir}"/
# Create executable start wrapper
echo -e "#!/bin/bash\n${instdir}/wfcmgr" > "${pkgdir}"/usr/bin/citrix-client.sh
chmod a+x "${pkgdir}"/usr/bin/citrix-client.sh
# Go to package directory
cd "${pkgdir}${instdir}"/
# Create executable wrapper for the binaries
echo -e "#!/bin/sh\nICAROOT=/usr/lib/ICAClient\nexport \${ICAROOT}\n\${ICAROOT}/wfica -file \$1" > ./wfica.sh
echo -e "#!/bin/sh\nICAROOT=/usr/lib/ICAClient\nexport \${ICAROOT}\n\${ICAROOT}/wfica -associate -fileparam \$1" > ./wfica_assoc.sh
chmod a+x ./{wfica.sh,wfica_assoc.sh}
# Create symlinks for the Npica.ad binary
ln -s ./nls/en/Npica.ad ./Npica.ad
ln -s ./Npica.ad ./Npica
# Copy program inforamtion files to program root directory
cp ${srcdir}/nls/en/{eula.txt,install.txt,readme.txt} ./
# Copy default configuration files to config directory of the program and setting them readable
cp ./nls/en/{appsrv.ini,wfclient.ini,module.ini} ./config/
chmod 666 ./config/{appsrv.ini,wfclient.ini,module.ini}
chmod 777 ./config
# Copy Firefox plugin into plugin directory
cp ./npica.so "${pkgdir}"/usr/lib/mozilla/plugins/
}
The lib32-packages e.g. lib32-openmotif you can find in my repo:
[andrwe]
Server = http://andrwe.dyndns.org/repo/x86_64
I'll commit the PKGBUILD for lib32-openmotif later to AUR.
Here is it for you if you don't want to use the package in my repo:
# Contributor: Andrwe Lord Weber <lord-weber-andrwe at renona-studios dot org>
pkgname=lib32-openmotif
pkgname32=${pkgname/lib32-/}
pkgver=2.3.2
pkgrel=2
pkgrel32=2
pkgdesc="Openmotif"
arch=('x86_64')
url="http://www.opengroup.org/openmotif/"
license=('GPL')
source=(ftp://ftp.archlinux.org/community/os/i686/${pkgname32}-${pkgver}-${pkgrel32}-i686.pkg.tar.gz)
noextract=()
md5sums=('58294043fc91e679a45d786b8b33fe24')
build() {
mkdir -p ${pkgdir}/opt/lib32/usr/
cp -rPf ${srcdir}/usr/lib ${pkgdir}/opt/lib32/usr/lib
}
The problem which occures is that the client tries to convert the characters.
Here are some pictures showing the problem:
Last edited by Andrwe (2010-03-04 07:54:08)
Website: andrwe.org
Offline
lib32-libxaw is properly updated in the AUR. No need for the alterations to pkgbuild.
Ok, by the time I wrote that it wasn't.
Because our citrix-server don't support http-connection I can't use the firefox plugin and therefore I'm trying to get the client working but I don't have an idea anymore.
It may be nice for users that do require http connection that you insert the nspluginwrapper line.
I'm getting the following error:
Did you try this:
sudo nspluginwrapper -i /home/ty/.ICAClient/linuxx86/npica.so?
If that doesn't work, maybe installing it system wide in usr/lib/ICAClient/ works better.
Offline
Because our citrix-server don't support http-connection I can't use the firefox plugin and therefore I'm trying to get the client working but I don't have an idea anymore.
It may be nice for users that do require http connection that you insert the nspluginwr
I've added the line to .install script as information together with the wiki-page.
Website: andrwe.org
Offline
I followed your wiki, you need to install lib32-openmotif to get it working and you should never link libraries.
You should add all lib32 packages to the lib32 group. So you can unistall all in one command.
I also have to problem that it can't convert UTF8 to Unicode, maybe something to do with the locales on the system?
Offline
I followed your wiki, you need to install lib32-openmotif to get it working and you should never link libraries.
You should add all lib32 packages to the lib32 group. So you can unistall all in one command.I also have to problem that it can't convert UTF8 to Unicode, maybe something to do with the locales on the system?
Do you have correctly displayed characters?
I only get '?' instead of each character.
Website: andrwe.org
Offline
They are displayed correctly.
But I don't connect with wfcmgr, but if I start it all chars are ok.
Offline