Remote Desktop (Windows) access from Slackware (Linux)
Windows XP and newer versions have the standard feature of “sharing” access to the desktop from remote computers. This is very easy to set up and no extra software is required on the computer that is sharing or the one that is accessing the desktop – as long as they are both running Windows…
I needed to access a remote Windows XP desktop, but I don’t run Windows here on my computer. I do have a netbook that came with Windows pre-installed, so I first set it up there, but I wanted access from the computer I use every day, which runs Slackware.
Enter my quest for a Linux-based solution…
First I found FreeeRDP, a fork of the original rdesktop project, in active development. There was no SlackBuild for it, but it was straightforward enough to write one and I had it up-and-running in no time.
FreeRDP is completely command-line based – something I actually like – and after a quick look at the man-page I was able to connect to my Windows desktop typing:
xfreerdp -g <width>x<height> -u <user> -p <password> <ip-of-desktop>
And I was connected:
Having a working solution was nice, but I wanted something something to connect fast without typing all the parameters. I could write a simple script or – look for a GUI.
I found a SlackBuild for Remmina, which seemed to work with FreeRDP and give a nice menu to configure all the parameters and desktops I want to connect to.
I soon found out that I needed updated versions though of Remmina and Remmina-plugins. The newest FreeRDP version (0.8.2) is no longer compatible with the versions the Remmina SlackBuilds were written for originally. Compilation of the plugins crashed completely, complaining about missing struct members and other errors, like
'RD_PEN' has no member named 'colour',
'RD_BRUSHDATA' has no member named 'colour_code',
expected declaration specifiers or '...' before 'RD_HCOLOURMAP', etc., etc.
A simple version bump to Remmina-0.8.3 and Remmina-plugins-0.8.4 solved all problems though.
After building and installing it, simply start Remmina from the “Network” menu and configure your remote desktop:
Remmina has some nice features, like full-screen with a floating bar, just like the Windows connection has, tabs for several concurrent remote connection, etc. What I’m missing though is some more flexible screen resolutions, so that I can mimic the exact same resolution I have on the real desktop. Well, I’ll send this suggestion to the authors and who knows, in the next release…
3. Installing it on your own system
Remmina needs libssh and libunique. You can download the SlackBuilds for these and for remmina and remmina-plugins from SlackBuilds.org and build the packages.
For freerdp, which is still in the pending queue for approval on SlackBuilds.org, you can get the SlackBuild script from my site, where you can also download pre-built packages for all these.