Wednesday, April 27, 2011

The Road To Seamless Windows

While we do run a lot of open source and Linux software, of course there are still some applications that run in Microsoft Windows. I personally don't work on the Windows side of things, and it's handled by the other System Administrator.

The launch scripts to run these applications are mature and work well. In the last year we made some changes mentioned in previous blogs in regards to using Rdesktop running on the thin client itself, along with allocating some thin client RAM for video cache. All of which have made the applications run virtually the same speed as they would on the server.

The last technological feature that was always on the radar was running them in a seamless window. This is the opposite of how it worked previously; a container would open and the software was sitting inside of this space. This design wasn't terrible, but disallowed users from having all of the resizing capabilities that they wished. A new version of Rdesktop (1.7.0) was just released in the last week or so and the Windows administrator spent some time testing it once again. Previously there were some stability problems when running seamlessly, and it would sometimes crash. It never felt ready for daily and enterprise use.

He tested Rdesktop 1.7.0 and felt it was very stable and would work well within our deployment. The next obstacle was that the HP thin clients are running Debian Lenny and no backports of Rdesktop had been done and possibly never will take place. So we built a VM to run Debian Lenny with full development tools and libraries. This VM image will be kept for future projects that might arise. Rdesktop was compiled cleanly and then we moved it over to the thin client manually and installed the binary and libraries and everything worked. I spent some time this morning rewriting the rdesktop launch scripts on the thin clients to understand the desire for a seamless window and use the appropriate flags. Rdesktop is a bit twitchy about the order of the arguments and this had to be tested and QA'd.

So after less than a few hours of work, it's now ready for release to our beta desktop users. Once stress tested, this technology will be pushed to the rest of the City. In the shot below, you can see Internet Explorer running in a seamless window, tightly integrated into the Linux desktop. A single click of an icon in avant and you can be listening to Steve Perry in just a few seconds. ;)

8 comments:

Anonymous said...

Windows....Yea, not so much.

Anonymous said...

I can understand needing to provide Windows compatibility, but why would you use it to run Internet Explorer to view YouTube? That should work perfectly well in the native browser.

Dave Richards said...

@anonymous: You are correct, Youtube is working perfectly from Linux/Firefox. We use Youtube for testing for choppy sound and video being delivered from Windows. The very few people that use Internet Explorer are going to crappy sites (mostly other Governmental agencies!) that are hard coded to work only with IE. The shot was more of a stress test and demonstration of it being seamless.

Dave Richards said...

In fact, with the new 64bit flash player we are getting better video from Linux now than via RDP to Windows.

ak said...

So has the new rdesktop the feature included where you can lauch multiple seamless applications over the same connection (this patch: http://www.fontis.com.au/rdesktop)? I couldn't find the changelog on the rdesktop site.

Anonymous said...

"only work with IE" or "only work with browsers that identify themselves as IE"? Have you tried setting the Firefox user-agent? Or do those sites actually rely on IE-specific (mis-)behavior?

Unknown said...

I just tried the new version with one of my "problem" apps, and there is a vast improvement.

BTW, how do you pass credentials to the Windows servers? Do users have to re-enter their passwords, or do you have another method?

Anonymous said...

Like AK, I'm wondering what you're using to launch seamless windows apps...

Is Windows Server 2003 serving the applications to the linux host running rdesktop version...?