Progress on ThinLinc server ARM64 support

Hi everyone,

We’ve received feedback over the years asking about ThinLinc Server support for ARM64 / aarch64 platforms. It seems more organizations look to deploy Linux remote desktop solutions on ARM servers in the future.

I wanted to share an update on the topic:

The foundational work required to enable aarch64 builds has now been completed. With this milestone behind us, active development on bringing native ThinLinc server support to ARM64 is now underway.
We don’t have a fixed release date or timeline to share at this stage. However, we would value your input:

• What ARM hardware and Linux distributions are you most interested in? (AWS Graviton, Ampere, on-premises servers, etc.)
• What is the reason for choosing ARM hardware?
• Would you be interested in participating in early testing or a beta program?

I’ll post further updates in this thread as we have more information to share. Thank you for your continued interest and feedback.

5 Likes

Today we have an update on this!

We have successfully created a prototype ThinLinc server that works well on ARM64. Initial tests show that it runs well on both NVIDIA DGX Spark and Raspberry Pi 5. This is very promising, but we need more testing.

We are now looking for organizations with ARM64 hardware on hand who are interested in participating! If you are interested in moving this forward faster, towards a finished product, reach out to support@cendio.com, we have prototype installation bundles available.

3 Likes

In particular, I would like to encourage HPC centers to reach out for testing. This prototype of ThinLinc for ARM64 should run on systems such as the NVIDIA DGX Spark and servers based on NVIDIA Grace, Grace Hopper, and the Vera Rubin platform. It can be used on login nodes of HPC systems (Cray EX, HPE ProLiant, Dell PowerEdge, and Eviden/Atos BullSequana), as well as on standalone servers (Lenovo ThinkSystem, Supermicro, and GIGABYTE).

This release should also run on cloud-based ARM64 systems, such as AWS Graviton and Azure Ampere instances.

1 Like

Sorry, I no longer do HPC post retirement, used to be tight with Atos/Bull colleagues.

I have decades of history with Citrix ICA, X-terminals, RDP, VNC, NoMachine etc.

While I currently running Proxmox mostly on X86-64, I am trying to also run it on an Orange PI 5+ with 32GB of RAM, an RP5 with 8 (ran the Chinese v8 port for a while), and a Snapdragon X2 Elite Extreme with 48GB of RAM. I’m missing TL there, x2go isn’t quite the same.

The X2 is still waiting for native Linux support, so it’s either about running TL inside a VM or on WSL2 for that machine until I can get rid of Windows.

So yeah, mostly niche and corner cases, but perhaps you’d still like them covered.

2 Likes

If you would like to test, please send an email to support@cendio.com and we can hook you up with a test build!

1 Like

Seems the latest release can just be downloaded for ARM64, so I gave it a try.

Using an Orange Pi 5+ with 32GB and the latest Armbian Debian Trixie release as a base, I

  • added everything to get a full Plasma KDE desktop working locally (really good 4k only at 30Hz and on HDMI, but with full GPU support)
  • Found that Proxmox installation is already a supported option on Armbian (so I happily added that)
  • Installed ThinLinc server for ARM64 (installation went pretty identical to x86 and without issues)
  • Joined it to my Univention UCS domain for user management, file sharing, NextCloud etc. (totally unrelated to ThinLinc)
  • Did some testing…

Here I found the following differences/issues

  • ThinLink will now block you from running a remote session for a user that’s logged in locally (never seen that before, seems useful/helpful)
  • No window mananger on KDE session…

The latter seemed related to the Wayland transition and yeah, it just turned out that the kwin-x11 package needed to be installed manually.

I’ll probably try my Raspberry PI5 next, but the Orange Pi is the slightly more useful machine with 32GB of RAM, a much better GPU, a proper 2TB NVMe drive on 4 PCIe lanes and dual 2.5Gbit Ethernet.

Apart from the Armbian kernel, it’s also a rather standard ARM64 Debian.

It’s no speed daemon, pretty identical to an Intel Jasper Lake Atom in terms of performance and power consumption, just another bit of kit in my home-lab for giggles.

Functionally, however, it’s a full ARM Linux workstation, now even with proper remote desktop facilities, if that should be needed: thanks Cendio!

P.S.

I didn’t test any type of (remote) 3D acceleration, I fear that a) this stuff isn’t getting any easier with Wayland and b) it’s pretty academic on such a tiny box.

Yet I realize that in terms of beta-testing feedback, this might be useful, so I’ll try …when I find the time.

4 Likes

Based on the reports in the forum and via the support system, we decided to make the Arm64 beta release available via the regular download function on the website! However, we would certainly still appreciate an email to support@cendio.com or a post here in the forum if you have an issue with the Arm64 release and also if all things are working well.

We have reports about the following systems working well with the ThinLinc 4.21 Arm64 release:

  • NVIDIA DGX Spark
  • NVIDIA Jetson Thor
  • Ampere Altra on Azure cloud
  • Raspberry Pi 5
  • Orange Pi
3 Likes

I’ve just done a test on my RP5 8GB using a fresh Raspian, first upgraded to a full Plasma KDE and then adding the ThinLinc server install: zero problems, even included kwin-x11 automatically and I could also add it to the Univention UCS LDAP server for shared Windows/Linux logins.

Local 3D acceleration support (e.g. for Google Maps) on the RP5 has become quite amazing even at 4k, OpenGL and Vulkan APIs are supported, but that doesn’t carry through ThinLinc. 2D speed via ThinLinc seems quite acceptable to me even at 4k and true color, my PIs run over 2.5 GBit USB NIC links.

I remember running Windows games on a pass-through V100 on oVirt/KVM via a remoteGL session and VNC, so there is probably a way to overcome that limitation, it’s just not practical or useful for those tiny machines.

4 Likes

My fastest ARM64 platform is an ASUS Zenbook A16 with a Snapdragon X2 Elite Extreme, for which Linux support is still emerging, so for now it’s running Windows 26H1 Enterprise as host OS.

In the mean-time I am both trying WSL and a VM on Hyper-V running Fedora 44, since I sometimes prefer that on desktops over Debian e.g. to run Steam on x86 machines.

Installing the TL 4.21 for ARM64 I had noticed an aborted installation on WSL first, which I didn’t really follow up: WSL is a bit of a special case and I’m never sure how much it is a more of a chroot jail rather than a VM.

But when the same error happened on the Fedora VM, I looked a bit closer: it wasn’t actually complaining about the lack of AppArmor but a lack of ‘libcrypt.so.1’…

After fixing that with ‘dnf install libxcrypt-compat’ the installation and setup went through, I then only had to add the full X11 suite via ‘dnf install plasma-workspace-x11’ to get a fully working Plasma KDE desktop on Fedora 44 via TL 4.21 on ARM64.

I then did the same inside WSL where setup and configuration then also completed, but I haven’t gotten around verifiying that also works properly, since WSL naturally runs via a NAT network and may require some fiddling to make it network accessible.

The VM is certainly a better reflection of a typical setup and that works beautifully with only that crypt library needing to be checked as a dependency, perhaps also on x86 hosts.