(This gist is not being maintained, but the comments below might help people.)
The good news is that there is an Amazon WorkSpaces Linux client. If you happen to use Ubuntu, you can use the official instructions from the documentation. But what if you're on an rpm-friendly distribution like Fedora or CentOS?
alien
to the rescue.
You can use these steps to build a PCoIP client (not the 2023 WSP client) RPM from the original .deb
package.
(Tested using a Lubuntu 23.10 image to build the RPM and Fedora 39 to install it.)
Download the file from the Workspaces Linux client page.
wget "https://d3nt0h4h6pmmc4.cloudfront.net/workspacesclient_focal_amd64.deb"
If you don't have alien, get it.
sudo apt install alien
To avoid some errors, we need to repackage manually.
sudo alien -rgv workspacesclient_focal_amd64.deb
Fedora now ships liblttng-ust0-2.13
and the package was built with 2.12, so we'll omit coreclrtraceprovider.so
. See this issue for an unrelated project for a better explanation of the problem and the solution.
sudo sed -i '/"\/opt\/workspacesclient\/libcoreclrtraceptprovider.so"$/d' workspacesclient-4.7.0.4312/workspacesclient-4.7.0.4312-2.spec
Build the rpm package.
cd workspacesclient-4.7.0.4312 && \
sudo rpmbuild --buildroot `pwd` -bb workspacesclient-4.7.0.4312-2.spec && \
cd -
Did it work?
sudo rpm --query --info --package ./workspacesclient-4.7.0.4312-2.x86_64.rpm
You should see output like this...
Name : workspacesclient
Version : 4.7.0.4312
Release : 2
Architecture: x86_64
Install Date: (not installed)
Group : Converted/misc
Size : 162134366
License : see /usr/share/doc/workspacesclient/copyright
Signature : (none)
Source RPM : workspacesclient-4.7.0.4312-2.src.rpm
Build Date : Sat Nov 18 05:21:48 2023
Build Host : lubuntu
Summary : Amazon WorkSpaces Client for Ubuntu 20.04
Description :
(Converted from a deb package by alien version 8.95.6.)
Copy over this rpm to your RPM-based host. Install it and try it out.
sudo dnf localinstall ./workspacesclient-4.7.0.4312-2.x86_64.rpm
/opt/workspacesclient/workspacesclient
If you run into dependency errors for some packages that aren't in Fedora, you can try installing them yourself. These are not authoritative recommendations; they're just what others have found. Be careful about adding foreign packages to your installation.
# last confirmed on 24-Jun-2023 (includes libhiredis.so.0.13 and libhiredis.so.0.14)
sudo dnf install https://rpmfind.net/linux/openmandriva/4.3/repository/x86_64/main/release/lib64hiredis0.13-0.14.1-1-omv4050.x86_64.rpm
The spec also introduces an incorrect dependency error.
Error:
Problem: conflicting requests
- nothing provides libbz2.so.1.0()(64bit) needed by workspacesclient-4.7.0.4312-2.x86_64 from @commandline
- nothing provides libcurl.so.4(CURL_OPENSSL_4)(64bit) needed by workspacesclient-4.7.0.4312-2.x86_64 from @commandline
(try to add '--skip-broken' to skip uninstallable packages)
If these are the only dependencies you need, they're in the package, so we can use rpm to skip past them.
sudo rpm -ivh --nodeps ./workspacesclient-4.7.0.4312-2.x86_64.rpm
If the login doesn't render, you might be missing some packages.
sudo dnf install javascriptcoregtk4.0-devel webkit2gtk4.0-devel
If you run into a globalization related error, this invocation should help.
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 /opt/workspacesclient/workspacesclient
Neat! It's working good for Fedora 35, thanks!
It's really weird that this is not released for RPM-based distros.