RaspberryPI Citrix Client with HDX for Microsoft Teams
Hey, so I thought I would just create a post on how to create a cheap Thin Client like device which can be used to access Citrix remotely. The latest version of Citrix Workspace App ( previously known as receiver / ica client ) for Linux now contains HDX for Microsoft Teams but does require a couple of dependencies.
Prep the Pi
I have tested this on both the Raspberry Pi 3 and 4 which both worked well. First, we need to do is head over to https://www.raspberrypi.org/downloads/raspberry-pi-os/ and download the desktop image.
Once downloaded, unzip and write to the MicroSD Card with your favourite tool, alternative see the instructions at https://www.raspberrypi.org/documentation/installation/installing-images/ for a guide on how to do it.
Next, we need to boot your new Raspberry Pi OS installation and run through the setup process. Ensure you install the latest updates and reboot as part of the wizzard!!
Once rebooted we will now need to install some bits to get the HDX, WebCam and SaaS working nicely with Citrix. Firstly open the terminal using the shortcut on the taskbar at the top of the screen.
Next, we need to use the package manager to install the required packages.
sudo apt-get install gstreamer-tools libgstreamer-plugins-base0.10-0 libc++1-9 libgtkglext1
Download Citrix
Unfortunately due to Citrix's licensing structure, you will not find it in the software centre or via apt. They also make it hard to link directly to packages so we will have to do download the packages manually
Go to https://www.citrix.com/en-gb/downloads/workspace-app/linux/workspace-app-for-linux-latest.html and look for "Debian packages" under Available Downloads.
Under here select "Web Packages Only"
And then locate the "Citrix Workspace app for Linux Web Client (ARM HF)" and click Download file.
Optional - USB Support
If you want USB support then under "USB Packages" download the ARM HF version as above.
Install Citrix Packages
Once downloaded you will need to open the terminal again.
Then you will need to change to your downloads directory and run the dpkg command
sudo dpkg -i icaclientWeb_{Version}_armhf.deb
sudo dpkg -i ctxusb_{Version}_armhf.deb
This will now have installed the Citrix client ( and USB support if specified ) to your PI.
Webcam & Mic
There is one last step required to enable WebCam and Microphone to be enabled in your Citrix session. Again from a terminal run
/opt/Citrix/ICAClient/util/configmgr
This will open the preference tools, select the "Mic & Webcam" tab and select the option "Use my microphone and webcam"
And there you go, you are now ready to use your Pi to access Citrix and use MS Teams with full HDX support :)
Troubleshooting
- If HDX is not working then open a termin and run
sudo /opt/Citrix/ICAClient/util/hdxcheck.sh
this will check that you have all the dependencies installed and flag up any that are not.
- I also found that using my bluetooth headset ( UpRoar Wireless Headphones ) crash the citrix session. Use a USB headset/microphone worked ok.
- If you have issues with sound / speed then perform the usual checks
- Kick the kids off the wifi
- Try going hardwired instead of wifi
- Run a speed test
- Reboot your router
After thoughts
Great, that is good for the Pi but what about my Ubuntu Laptop/Desktop?
Well form the Citrix Debian Packages select x86_64 packages and follow the above.
You will need to install the following package versions on Ubuntu vs the Pi.
sudo apt-get install libgstreamer-plugins-base1.0-0 gstreamer1.0-tools libgtkglext1 libc++1-9