Raspberry Pi Citrix Workspace



Everyone is talking about the new Raspberry Pi 4 and ask themselves if it’s the new ultimate and cheap thin client. So far, I haven’t seen any customer here in Switzerland using a Pi with VMware Horizon. And to be honest, I have no hands-on experience with Raspberry Pis yet and want to know if someone in pre-sales like me easily could order, install, configure and use it as a thin client. My questions were:

The Citrix Workspace Hub, built on the Raspberry Pi3 and powered by NoTouch OS, antiquates Desktop PCs and desk phones and supports Citrix Casting and Session Roaming. Take advantage of Citrix Casting/Wireless Docking capabilities with Mac, iOS, and Android to seamlessly roam Citrix sessions from a tablet or mobile device to any workspace station. RX-HDX device is a Citrix Ready workspace hub (formerly known as HDX Ready Pi). NComputing is working with Citrix closely to bring the latest innovative features to our customers and partners and is considered as a lead partner for the program. RX-HDX device is FCC/CE certified and is in full production worldwide.

  • How much would it cost me in CHF to have a nice thin client?
  • What kind of operating system (OS) is or needs to be installed?
  • Is this OS supported for the VMware Horizon Client?
  • If not, do I need to get something like the Stratodesk NoTouch OS?
  • If yes, how easy is it to install the Horizon Client for Linux?
  • How would the user experience be for a normal office worker?
  • Is it possible to use graphics and play YouTube videos?
  1. Built on the Raspberry Pi 3 platform, the Citrix Ready workspace hub provides a secure connection to authorized apps and data. Citrix Workspace app for Android supports user authentication to.
  2. Nov 05, 2020 Sad. I found Manjaro to be the best distro for Raspberry Pi for day to day use. So unfortunate that Citrix cant be installed. I’ll keep a watch.

First, let’s check what I ordered on pi-shop.ch:

  • Raspberry Pi 4 Model B/4GB – CHF 62.90
  • KKSB Raspberry Pi 4 Case – CHF 22.90
  • 32GB MicroSD Card (Class10) – CHF 16.90
  • Micro-HDMI to Standard HDMI (A/M) 1m cable – CHF 10.90
  • Power: Official Power Supply 15W – CHF 19.40
  • Keyboard/Mouse: Already available in my home lab

Total cost in CHF: 133.00

Raspberry Pi 4 Model B Specs

I ordered the Raspberry Pi 4 Model B/4GB with the following hardware specifications:

  • CPU – Broadcom BCM2711, quad-core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
  • RAM – 4GB LPDDR4
  • WLAN – 2.4 GHz and 5.0 GHz IEEE 802.11b/g/n/ac wireless
  • Gigabit Ethernet
  • USB – 2x USB 3.0, 2x USB 2.0
  • Video – 2 × micro HDMI ports (up to 4Kp60 supported)
  • Multimedia – H.265 (4Kp60 decode), H.264 (1080p60 decode, 1080p30 encode)

With this powerful hardware I expect no problems and would assume that even playing videos and using graphics is not an issue. But let’s figure that out later.

Horizon Client for Linux

The support for the Raspberry Pi came with Horizon Client 4.6 for Linux:

Horizon Client for Linux now supports the Raspberry Pi 3 Model B devices that are installed with ThinLinx Operating System (TLXOS) or Stratodesk NoTouch Operating System. The supported Horizon Client features include Blast Extreme, USB redirection, and H.264 decoding.

And the current Horizon Client 5.1 still only mentions the support for Raspberry Pi 3 with the same supported feature set:

Horizon Client for Linux 5.1 is supported on Raspberry Pi 3 Model B devices that are installed with ThinLinx Operating System (TLXOS) or Stratodesk NoTouch Operating System. The supported Horizon Client features include Blast Extreme, USB redirection, and H.264 decoding.

Hm, nothing has changed so far. During the time of writing this article I’ll try to figure out if the official support for a Pi 4 is coming soon and why ThinLinX is the only supported OS so far. Because I saw on Twitter and on the Forbes website that people are waiting for Ubuntu MATE for their Raspis.

And I found a tweet from August 6, 2019, from the ThinLinX account with the following information:

ThinLinX has just released TLXOS 4.7.0 for the Raspberry Pi 4 with dual screen support. The same image runs on the entire Raspberry Pi range from the RPi2 onward TLXOS 4.7.0 supports VMware Horizon Blast, Citrix HDX, RDP/RemoteFX, Digital Signage and IoT

Raspberry Pi and Horizon Client 4.6 for Linux

The next question came up – are there already any people around who tested the ThinLinX OS with a Raspberry Pi 3/4?

Probably a few people tried it already, but only one guy from UK so far blogged about this combination on his blog vMustard.

He wrote a guide about how to install TLXOS and the TMS management software, the configuration of TLXOS and how the Horizon Client for Linux needs to be installed. For sure his information helps me to get started.

Horizon Test Environment

I’m going to use VMware’s TestDrive to access a vGPU enabled Windows 10 desktop from the EMEA region. Such a Windows 10 1709 desktop is equipped with a Xeon Gold 6140 CPU and a Nvidia Tesla V100 card. I tried to get a card from Nvidia to perform the tests in my home lab, but they already gave away all the cards they had. So, the test in my home lab has to wait for a few weeks or months. 🙂

Workspace ONE UEM and TLXOS

And when I finally have installed TLXOS and can connect to a Horizon desktop, would it be possible to install Intelligent Hub and enroll the device in my Workspace ONE UEM sandbox environment? Is this also possible and supported?

Checking our VMware Docs and the Workspace ONE UEM product documentation the following information can be found:

The flexibility of the Linux operating system makes it a preferred platform for a wide range of uses, including notebooks, Raspberry Pi devices, and other IoT-capable devices. With Workspace ONE UEM, you can build on the flexibility and ubiquity of Linux devices and integrate them with your other mobile platforms in a central location for mobile device management.

Hm, would my new thin client be supported or not? The only requirements mentioned, are:

  • You can enroll devices running any version and any configuration of Linux running on either x86_64 or ARM7 architecture into Workspace ONE UEM
  • You can enroll Linux devices in any Workspace ONE UEM version from 1903 onward
  • You must deploy the Workspace ONE Intelligent Hub for Linux v1.0

As you can see above the new Raspberry Pi 4 is based on ARM8. I asked our product management if the RPi4 and TLXOS is supported and received the following answer:

As for WS1 UEM support for Linux, we do support ARM and won’t have a problem running on a Pi4, but we are still early stages for the product

As the Linux management capabilities with Workspace ONE UEM are very limited, I’m going to wait another four to six months to perform some tests. But TLXOS is anyway coming with its on management software. And customers would probably prefer another Linux Distribution like Ubuntu MATE.

Raspberry Pi 4 Setup

There is no special manual needed to set up a Raspberry Pi. Just unbox and install it in a case, if you ordered one. Here are some general instructions: https://projects.raspberrypi.org/en/projects/raspberry-pi-setting-up

Install

Install ThinLinX OS on the Raspberry Pi 4

Download the most recent installer for ThinLinX OS (TLXOS) for a Raspberry Pi: http://thinlinx.com/download/

Insert your microSD card into your PC and launch the “TLXOS Raspberry Pi SD Card Installer” (in my case tlxos_rpi-4.7.0.exe” and press “Yes” if you are prepared to write the image to the SD card.

After the image extraction a “Win32 Disk Imager” window will appear. Make sure the to choose the correct drive letter for the SD card (in my case “G”). Click “Write”

If everything went fine you should get a notification that the write was successful.

Now put the SD card into the Pi, connect the USB-C power cable, micro-HDMI cable, keyboard and mouse.

And then let’s see if the Pi can boot from the SD card.

It seems that the TLXOS just booted up fine and that we have “30 Day Free Trial” included.

A few minutes later TLXOS was writing something to the disk and did a reboot. The Chromium browser appears. This means we don’t need to install the TMS for our tests, except you would like to test the management of a TLXOS device.

I couldn’t find any menu on TLXOS, so I closed the browser and got access to a menu where I apparently can configure stuff.

Install Horizon Client for Linux on TLXOS

After I clicked on “Configure” before I browsed through the tabs (Application) and found the option to configure the Horizon Client. It seems that the client is included now in TLXOS which was not the case in the past. Nice!

Note:

When a TLXOS device boots, if configured correctly it will automatically connect to a Remote
Server using the specified connection Mode. Up to 16 different connection Modes can be
configured

I just entered the “Server” before and clicked on “Save Settings” which opened the Horizon Client automatically where I just have to enter my username and password (because I didn’t configure “Auto Login” before).

Voila, my vGPU powered Windows 10 desktop from VMware TestDrive appeared.

As first step I opened the VMware Horizon Performance Tracker and the Remote Desktop Analyzer (RD Analyzer) which both confirmed that the active encoder is “NVIDIA NvEnc H264“. This means that the non-CPU encoding (H.264) on the server and the H.264 decoding on TLXOS with the Horizon Client (with Blast) should work fine.

To confirm this, I logged out from the desktop and checked the Horizon Client settings. Yes, H.264 decoding was allowed (default).

After disallowing the H.264 decoding I could see the difference in the Horizon Performance Tracker.

The active encoder changed to “adaptive”. Let’s allow H.264 again for my tests!

Testing

1) User Experience with YouTube

As a first test the user experience with the Raspberry Pi 4 as a thin client and to check how the H.264 decoding performs I decided to watch this trailer:

AVENGERS 4 ENDGAME: 8 Minute Trailers (4K ULTRA HD) NEW 2019: https://www.youtube.com/watch?v=FVFPRstvlvk

I had to compress the video to be able to upload and embed it here. Important to see is that I was watching the 4K trailer in full screen mode and the video and audio were not choppy, but smooth I would say! I had around 21 to 23 fps. But that’s very impressive, isn’t it?

For the next few tests I’m going to use what TestDrive offers me:

2) TestDrive – Nvidia Faceworks

3) TestDrive – eDrawings Racecar Animation

4) TestDrive – Nvidia “A New Dawn”

Citrix

5) TestDrive – Google Earth

6) FishGL

Citrix Workspace For Mac

Conclusion

Well, what are the important criteria which a thin client needs to fullfil? Is it

  • (Very) small form factor
  • Management software – easy to manage
  • Secure (Patching/Updating, Two Factor Authentication, Smartcard Authentication)
  • Longevity – future proof
  • Enough ports for peripherals (e.g. Dualview Support)
  • Low price
  • Low power consumption

It always depends on the use cases, right? If Unified Communications is important to you or your customer, then you need to go with the Stratodesk’s NoTouch OS or have to buy another device and use a different OS. But if you are looking for a good and cheap device like the Raspberry Pi 4, then multimedia, (ultra) HD video streaming and office applications use cases are no problem.

My opinion? There are a lot of use cases for these small devices. Not only in end-user computing, but it’s easy for me to say that the Raspi has a bright future!

With the current TLXOS and the supported Horizon Client features so far I wouldn’t call this setup “enterprise ready” because the installation of TLXOS needs to be done manually except you can get it pre-installed on a SD card? Most customers rely on Unified Communications today and are using Skype for Business and other collaboration tools which is not possible yet according to the Horizon Client release notes. But as soon as the Horizon Client (for Linux) in TLXOS gets more features, the Raspberry Pi is going to take some pieces of the cake and the current thin client market has to live in fear. 😀

The biggest plus of a Raspberry Pi as a thin client is definitely the very small form factor combined with the available ports and the cheap money (TLXOS license not included). You can connect two high resolution monitors, a network cable, keyboard, mouse and a headset without any problem. If you buy the Pi in bulk as customer then I claim that the price is very, very hard to beat. And if a Pi has a hardware defect then plug the SD card into another Pi and your user can work again within a few minutes. If VESA mount is mandatory for you then buy a VESA case. By the way, this is my KKSB case:

What is missing in the end? Some Horizon Client features and the manual initial OS deployment method maybe. I imagine that IT teams of smaller and medium-sized companies could be very interested in a solution like this, because a Raspberry Pi 4 as a thin client already ROCKS!

NComputing makes sure NoTouch has latest versions of Citrix Workspace App (formerly Citrix Receiver) integrated. Our Citrix Workspace App implementation supports both ICA and HDX, as well as Flash, multimedia and USB redirection, making a perfect Citrix endpoint solution, without any need for installing software, cryptic configuration files or command line options! NoTouch provides a complete configuration environment for Citrix Workspace App, so it is not necessary to directly work with Citrix' own configuration windows - everything can be configured and managed via the local NoTouch configuration menu as well as centrally with NoTouch Center. The Citrix Workspace Hub also uses Citrix Workspace App.

This article gives an overview of the different configuration scenarios and later describes Citrix product-specific configuration steps. We assume that you basically understand how NoTouch OS is configured and especially how server connections are created and configured. The Citrix Workspace App for Linux differs in many aspects from the Windows-based Receiver, not only in terms of look&feel, but also in terms of available features and even bugs.

  • 1Citrix configuration scenarios in NoTouch
    • 1.2Citrix Workspace App
  • 2Common Configuration scenarios
  • 5Browser Content Redirection (BCR)
  • 6HDX and Multimedia support
  • 8Advanced configuration

The following options are available how to configure the system:

  • Go directly into one published resource, e.g. a fullscreen desktop
  • Present a choice to users for multiple available resources, e.g. published applications
  • Use Firefox or Chromium web browsers and log in via browser
  • Use the 'selfservice' GUI to provide a browser-like experience

Browser-based login

If you want to log in via browser, create a connection, use either Firefox or Chromium, and point it to your Citrix URL. You will notice that you have the 'Citrix Workspace App'

On most modern PCs a browser is a good choice, and NoTouch cleans out the environment after the browser is closed. On older systems or the Raspberry Pi you may find a browser solely for the purpose of logging in uses too many resources, though.

Citrix Workspace App

In most cases a connection of type Citrix Workspace App and a Citrix URL as connection target are enough to successfully run a Citrix client.

'Citrix Workspace App', the mode of choice for using NoTouch with both on-premise and cloud-based Citrix deployments, including Citrix Workspace. It can be used to either run one resource (absolutely seamless to the end user) or show a menu where users can choose from - at your option!

If you want to connect to sites using the older PNA protocol or any earlier Citrix products, please visit Legacy Citrix configuration.

Note: Before version 2.40.4680 (i.e. end of 2018), the Citrix Workspace App connection mode was called Citrix/StoreFront

Creating a StoreFront connection

Setting up a connection to Citrix is really easy. Follow these simple steps:

  1. Create a connection
  2. Set its Connection Mode parameter to 'Citrix Workspace App' (older versions call this 'Citrix/StoreFront')
  3. Set the Citrix StoreFront URL into the Connection Target parameter
    • Use the real StoreFront API URL, typically like /Citrix/Store (as opposed to the user/web browser URL that ends in /StoreWeb)
    • You can also use the Citrix URL parameter of the Citrix options instead of Connection Target - both parameters work equally well
  4. Make sure the client has access to all necessary Certificates. StoreFront is SSL-only, it is mandatory to install proper root certificates!

NoTouch will display a chooser if more than one published resources are available (otherwise, if it is only one, it will launch that without further questioning). If you want to go directly into one resource, please read below.

Note: The Citrix Workspace App will display a choice between different stores. That is especially common if going through a NetScaler that bundles multiple stores. To avoid that, you must set up your URLs that it goes to one store. It is really all depending on the URL and the server configuration.

Starting directly into a specific application or desktop

If you want to start a specific resource instead of showing a chooser:

  • Set it into the Launch Resource parameter of the Citrix options, or
  • Make sure Citrix StoreFront offers only one resource. In that case, NoTouch will start the single available resource automatically.

Logoff timeout

By default NoTouch will close the StoreFront connection immediately after the actual published application or desktop is closed. This is expected in 99% of all use cases - you don't want your users to log off from a Windows desktop, walk away from the workstation but leave the StoreFront chooser open for anybody else...

However, if your use case is different, you can modify the StoreFront stay logged in parameter in the Citrix options. It is 0 by default (=immediate termination), any number of seconds is ok. Thus, if you type in 120, you would give your users two minutes (120 seconds) time to choose another connection out of the chooser window.

Selfservice

Selfservice is part of Citrix Workspace App. Any connection of type 'Citrix/StoreFront' can be simply switched to use selfservice, simply look for the 'Use selfservice GUI parameter' and switch it on.

Desktop Viewer Toolbar

The Desktop Viewer Toolbar is an overlay menu that allows to quickly end or modify a Citrix session. You can switch it off. Usually system administrators like it, but end users not so much.

The Raspberry Pi can display the Desktop Viewer Toolbar only when NOT in H.264 mode. That means, if you want it on the Raspberry Pi, you have to both disable H.264 and enable the Desktop Viewer Toolbar.

Help! It's not fullscreen!

Connection modes Citrix/One application or desktop and Citrix/Program Neighborhood as well as connecting to Citrix via browser means that the actual session specification will be created on the server. This includes for example the window size. It is not possible to modify such settings from the client side - you must do it in the Citrix management console, e.g. setting the 'window size' to Fullscreen.

Multimonitor/Dualscreen operation

The Citrix Receiver will take advantage of multiple monitors automatically and it will report screen geometry to the server. Please make sure Multimonitor support works, more information can be found here: Multimonitor operation with NoTouch

Two parameters influence the dualmonitor/multimonitor behavior - the effects of these parameters are entirely up to Citrix and may change with different versions of the Citrix client:

  • Use screens (span)
    • Default. This is the default. All monitors are available will be used if present.
    • All. Force using all monitors.
    • No setting. NoTouch will not set this parameter at all when launching the Citrix client.
    • Custom. The values from the 'Custom span parameter' will be taken.
  • Custom span parameter (only if 'Use screens' is set to custom. The following excerpt is from the Citrix manual:

Most people will be fine with default settings, both in single- and in dual-monitor setups.


To operate Citrix Receiver properly with HTTPS connections, it must trust your StoreFront site's CA root certificate. In case you have publicly available Citrix URL you will most likely have used a well-known certification authority (CA) whose certificates are already in the system's trusted certificate store. On private, internal sites however you might use a self-signed certificate or one signed by your (private) Microsoft Active Directory Certification Service. In these latter cases, you must make the certification authority's (CA) root certificate available to NoTouch via the mechanisms defined in documentation on certificates.

  • Citrix does not accept SHA-1 certificates. SHA2 (e.g. SHA256) is required.
  • If your server certificate was signed by a sub-CA, the server must send the certificate chain or you must supply the intermediate CA certificates. This is a very common problem.
  • Certificates you upload must be named .crt and be in human-readable form (starting with ---- BEGIN CERTIFICATE ---, what is called 'Base64-encoded DER'). If the file you plan to upload is not human-readable, you are using the wrong format.
  • Please avoid having whitespaces and non-ASCII characters in the file name (no accented characters, no umlauts)

The Citrix Receiver for Linux does not have any switch to simply ignore the certificate check. That means you can not just turn the checks off. This is a Citrix policy (or 'limitation', depending on your point of view).

For more information please see the article on Certificates.

By default, USB forwarding is switched to on and USB devices will be forwarded to the server automatically. So called HIDs (human interface devices, such as keyboards, mice, but also mouse-emulating devices like digital dictation foot pedals) will not be forwarded, but rather handled locally and brought to the VDI desktop as keystrokes and mouse movements.

There are two parameters, both need to be enabled for USB forwarding to work (yes, the default is that both are on):

  • 'Citrix USB forwarder' in the 'Services' section
  • 'Generic USB forwarding' in the ICA parameters section of the actual connection.

The Citrix USB forwarder is a system service, thus it can be configured from the 'Services' parameters, not the Citrix ICA connection parameters. The startup behavior is controlled by the parameter named 'Citrix USB forwarder' parameter. It has these options:

  • 'with Citrix connection'. This is the default. Start the Citrix USB forwarder only if there is a Citrix connection configured.
  • 'off'. Do not start the Citrix USB forwarder.
  • 'on'. Start the Citrix USB forwarder after system boot.

Futhermore, you can allow or deny specific devices by using the 'Allow devices' and 'Deny devices' parameters in the 'Services'/'Citrix USB' parameters. These parameters directly modify Citrix' usb.conf file and thus accept the original Citrix syntax only [1]. Multiple stanzas, each one describing one device, stanzas separated by commas, can be added to either of these parameters. A stanza consists of tags that in turn have the form TAG=VALUE. Acceptable tags are:

  • VID Vendor ID from the device descriptor
  • REL Release ID from the device descriptor
  • PID Product ID from the device descriptor
  • Class Class from either the device descriptor or an interface descriptor
  • SubClass SubClass from either the device descriptor or an interface descriptor
  • Prot Protocol from either the device descriptor or an interface descriptor

Valid examples for either of the two parameters are:

  • VID=1460 PID=0008
  • Class=07 SubClass=06

The Information page of the local configuration application will present information about USB devices to you - this is the place how you can find out the VID or PID, for instance. Command line afficionados will prefer the lsusb command, preferably in lsusb -v form.

Please see the original Citrix documentation for more information [2]. Changes to these parameters need a reboot to become active.

Browser Content Redirection (BCR) is a Citrix feature to use the local, client CPU to render certain webpages instead of the VDA side. In other words, instead of the VDA side rendering the whole page, a Workspace-App-side rendering engine will be started and instructed to fetch the web content from the URL, render it locally and draw it into the browser window 'over' the rest of the Citrix session.

On the NoTouch side, BCR needs to be switched on with the 'Browser Content Redirection' parameter under the Citrix options - set it to 'on'. On the Citrix side, you'll have to deal with

  • certain Citrix policies,
  • browser plugin installation,
  • URL whitelisting (only whitelisted URLs will be redirected).

More information can be found here: Browser Content Redirection and Troubleshoot Browser Content Redirection.

Needless to say, all required components for BCR are part of NComputing NoTouch OS. You do not need to worry about installing GStreamer, WebKitGtk+, CEF etc.

To use BCR with multimedia content on the EX400 (x64) thin client, you will need the Fluendo codec pack. As of WSA 19.06, Citrix can not simply work with 'only free codecs'. See below for a more detailed explanation on the codec question.

Codes

A codec in this context is a program to playback a certain kind of video or audio stream. NComputing NoTouch OS only includes codecs that are free from any patent license fees. We understand many people don't care but we do. If you download any kind of desktop Linux and then additionally install these patented codecs such as AAC or H.264, you are at risk of being sued, at least in a commercial environment. That said, please don't report bugs to NComputing that sound like 'It works on Ubuntu, I just installed all these codecs...'. The proper way is to purchase the Fluendo codecs, which are high-performing and properly licensed codecs on Linux. This codec is relatively inexpensive and gives you legal safety as well as the highest performance. Note: This only applies to software. If your system has hardware decoders and the drivers can make use of them, the royalties are already being paid for by the HW manufacturer.

Typical free codecs are VP8, VP9, AV1, Theora (video), and Opus, FLAC, MP3 (audio). Yes, MP3 is now patent-free since the last patent expired in mid-2017. Typical codecs that require licensing are AAC (audio), MPEG-2, H.264, and HEVC/H.265, again, unless your hardware has such codecs built-in.

RX-HDX (based on Raspberry Pi platform)

Browser Content Redirection on the Raspberry Pi 3 does work in principle but is unsupported by NComputing as there are a few caveats. The Pi implementation, as of mid-2019, uses CEF (Chrome Extension Framework) as opposed to WebkitGtk+ which is actually the more modern approach. However,

The software is still very early and may not work in all circumstances (please direct support questions to Citrix)It does not work conceptually with a full-screen H.264 encoded session, obviouslyIt will degrade performance because the Pi 3's CPU is not made for rendering complete web pagesThe Raspberry Pi 4 with its improved CPU power changes the game - As the Raspberry Pi 4 emerges, both Citrix and NComputing are working together on next-generation BCR capabilities.

From within the 'HDX/Multimedia' parameter section (a subsection of Citrix 'ICA' parameters), several aspects of multimedia support of the ICA/HDX protocol can be configured.

HDX MediaStream Flash Redirection

Flash redirection is enabled by default. Please note that the list of software requirements on the server side is long and the list of supported software modules such as browsers is very short. You may have to adapt your VDI environment to meet Citrix requirements.

Notes:

  • You can use your own version of Flash. Sometimes this is necessary because NoTouch is shipped with newer Flash, but Citrix does not support the new Flash and instead requires an older Flash. Please look at this article for instructions on how to install your own version of Flash: Mozilla Firefox#Updating the Flash Player plugin
  • Taking that one step further, it is even possible to have a separate, different version of Flash installed just for Citrix purposes. This solves the problem that arises when you want the latest Flash in Firefox, but an older, Citrix-approved plugin for Citrix redirection. To install your own version of Flash specifically for use with Citrix Flash redirection, look for the 'Extension'->'Citrix Flash player URL' parameter, otherwise follow the instructions given above.

While for some time Citrix has required Flash version numbers to match on client and server, this is not required any more. In fact, the opposite is now true - Citrix suggests to disable the Flash version number check, as stated below and here: http://support.citrix.com/article/CTX134786

You should disable the Flash version check by adding/modifying Windows Registry Key on VDA, named “FlashPlayerVersionComparisonMask” which is a dword that should be set to zero.

Raspberry Pi Citrix Workspace

This will need to set on each VDA:

  • 32 bit OS: HKLMSoftwareCitrixHdxMediaStreamForFlashServerPseudoServer
  • 64 bit OS: HKLMSoftwareWow6432NodeCitrixHdxMediaStreamForFlashServerPseudoServer

After making these modifications you need to restart IE on VDA.

HDX RealTime Webcam Video Compression

HDX RealTime Webcam Video Compression needs audio input to be enabled both on client and server to work. NoTouch typically has audio input ('microphone in') disabled by default, so you have to turn this on. Besides that, no extra switch is necessary to enable HDX RealTime Webcam Video Compression, but there's still an extra switch to force the redirection, 'HDX RealTime webcam video compression'.

HDX RealTime Media Engine (RTME)

The Citrix HDX RealTime Media Engine (RTME) is the client-side component of the Citrix HDX RealTime Optimization Pack for Skype for Business. To enable Skype for Business experience, both client side and server side need to be properly configured.On the client side, both RX-HDX and EX400 thin clients come with RTME integration. By default, the HDX RealTime Media Engine is disabled and must be enabled for the Citrix connection to optimize the Skype for Business experience. This can be done in Connection -> Citrix -> HDX/Multimedia settings by setting the “HDX Realtime Media Engine (Skype for Business)” parameter to “on” (see screenshot below).


On the server side, the Citrix HDX RealTime Connector also needs to be installed (see screenshot below). The RealTime Connector starts when Skype for Business front-end application is launched and communicates with the HDX RealTime Media Engine in the end-user device.


Citrix HDX RealTime Media Engine and Citrix HDX RealTime Connector should ideally have matching versions. With all the prerequisites in place, the Connector and Media Engine should connect together and exchange some information (see screenshot below).


Please be sure to check the supported Skype for Business versions in this article to ensure compatibility with the HDX RealTime Optimization Pack:
https://docs.citrix.com/en-us/hdx-optimization/2-4-ltsr/system-requirements.html


Once the HDX RealTime Optimization Pack is setup, the audio and video devices connected to the thin client are enumerated locally by RTME (i.e. not redirected from the client to the VDA). The Audio and video settings can be modified directly from Skype for Business setting menu.


HDX 3D Pro GPU/H.264 acceleration

HDX 3D Pro GPU/H.264 acceleration is enabled by default. Switch it off by setting the 'HDX 3D Pro GPU/H.264 acceleration' parameter to off.

If there are any issues regarding the session's resolution while HDX 3D Pro is active, please have a look at the follwoing article:

HDX Mediastream Windows Media Redirection

NoTouch includes GStreamer, as required by Citrix Receiver to support Mediastream Windows Media Redirection [4].

Printing

Printing works fine with Citrix in NoTouch. Please consult our Printer configuration page.

Citrix can forward smartcard readers and use these for login purposes. U.S. Federal customers will enjoy the CAC card support. In that case, do not forward the smartcard reader with generic USB forwarding. Configure smartcard support according to these instructions:

  1. Switch on the 'Smartcard service (PCSCD)' in the 'Services' options
    • In most cases the default settings for the Smartcard driver parameter will be fine. Some readers need the Omnikey setting, not only Omnikey readers. You may have to experiment with that or contact support.
  2. Set the 'Smartcard login' parameter in the Citrix parameters to 'on'

Note: For XenDesktop, do not attempt to use the generic USB forwarding mechanism to forward the smartcard reader (it won't be default, you would have to play with the settings). The downside is that then you can't use the reader for login purpose. It would work to forward a reader into the session only (ie without login) if that is what you want.

Citrix Receiver

NoTouch comes with reasonable default values and should accomodate all Citrix options that are used by 99% of the people. However sometimes even deeper configuration accesses are necessary. NoTouch comes with an easy-to-use method of modifying Citrix INI files: Citrix Receiver configuration files

Furthermore, you can totally rewrite the files that are used to generate the Citrix configuration, which would work by the template mechanism.

Selecting the Citrix Receiver version

Most NoTouch images have at least two Citrix Receiver versions included. Yes, you read that correctly, two different versions of the Citrix product, so you can select the one that fits your use case better. By default, the newer client will be used. At the time of writing, this is the 13.4 Receiver for Linux and the alternative, older Receiver is 12.1.

To switch to an alternative version of the Citrix Receiver, use the 'Client version (if present)' parameter in the Citrix options. You may have to scroll down a bit to find it, it is pretty far down below.

Proxy settings

The Citrix Receiver can connect via a proxy server. While these parameter may seem obvious, it is important to note that from OS 2.40.1310 on the Citrix Receiver will inherit the Firefox proxy settings of the same connection, if you switch the 'Use Firefox proxy settings' parameter to on. This will inherit exactly your NoTouch settings that you made in the 'Firefox' parameters.

Certainly you can configure the proxy settings directly and even specify to inherit from the system-level proxy settings. Here are the parameters in more detail:

  • Use Firefox proxy settings. If set to on, all parameters below will be ignored and the Firefox configuration parameters of the same connection will be evaluated.
  • Proxy type. Master switch denoting the kind of proxy configuration used:
    • No setting. Do not mention anything about proxy in the Citrix configuration files.
    • None. No proxy is to be used.
    • System settings. The system-level proxy settings will be used.
    • Auto config (Script). The system will download a .pac file from the 'Proxy autoconfig URL' and evaluate it.
    • Secure Host. Think of this as the 'manual configuration'. The system will use the 'Proxy hostname' parameter and the 'proxy bypass list'.
    • SOCKS. Uses the 'proxy hostname' as a SOCKS proxy.
  • Proxy hostname. Hostname:port combination of the proxy server to be used. It must be configured to accept HTTPS traffic.
  • Proxy bypass list. A comma-separated list of hostnames and IP addresses that Receiver will always contact directly.
  • Proxy autoconfig URL. A URL to the .pac file providing proxy auto-configuration, if the Proxy type parameter is set to 'Auto config (Script)'.
  • Fallback to direct if no autoconfig received. In case the autoconfig URL (see above) can not be reached, Receiver will connect directly. This can be useful if people are traveling.

Citrix considerations

Citrix has a lot of options, some combinations may have strange effects. Most people are fine with the defaults, in fact, NComputing recommends to change something only when a) necessary and b) advised to do so. Stratodesk can not provide support for Citrix installation, be sure to have a Citrix professional at hand when troubleshooting.

More detailed information can be found in Citrix Receiver for Linux 13.4 eDocs - you can skip the part about installation and integration since this is already done in NoTouch.

Also please check out the Citrix Receiver Feature Matrix.

In case something does not work as expected, always open a Citrix support case before contacting NComputing.