Thursday, October 25, 2012

Ubuntu Work Advances

Advances on the thin client work are promising.  Running the software with a much newer version of Linux and X drivers is going to reap some big benefits for us.

Initially the new image would not upload into FOG, so I worked using Clonezilla which takes longer to replicate to additional workstations.  I'm working on a master build on the 5745 model, and then clone it and push it down to 5725s and test everything fully on both models and ensure that everything works.  My coworker Brian had set up FOG and tinkered with the reason why it would not upload and finally found the issue.  There were reports that others had the same problem, and the solution was to boot the thin client with a recovery DVD and basically fsck the drive and that repaired the issue.  For whatever reason, FOG did not like the default HP file system as shipped and now it's working like a champ.  So now I can push updates to multiple devices easily over the network, a real time saver.

I have been having luck so far finding some PPAs that fix certain bugs and driver issues and making progress on both models.  The newer X drivers are much more friendly to monitor rotations and I was able to get a dual screen, landscape and portrait configuration working responsively.  So it looks like we'll be able to offer that as a feature to end users.  The older Debian release years ago was buggy in regards to monitors and rotations.  I also have started to test two portrait monitors side by side and that's coming along too.   Thankfully our hardware diversity is low by design, so after testing with a sample group it should deploy nicely to everyone else.  Next up will be testing Xinerama with three and four monitors to see how they work and see if they can be deployed into production.

Our progression in years past was that we ran compiz over remote display and this worked only in 16bit color.  Our users needed higher color depth and so a few years ago when we upgraded we disabled desktop effects and put everyone into 24 bit color.  An unexpected pleasure was that obviously a lot of work has been done in this area, and I was able to enable metacity compositing in 24bit color (shot below) and it's working!  That also allowed me to unflatten the avant-window-navigator as well and that too seems responsive on both models.  So I'm packing up a build with these changes and pushing it to our IT test users and see how it works.  It sure looks a lot nicer, hopefully this feature will not present any problems and make the final cut.


I'm hopeful to get this out past just IT staff next week for testing and I'll continue testing and making improvements.

Other projects: A vendor contacted us with a product that allows you to connect iPads to the GNOME desktop over low bandwidth, I'll blog about that when it's advanced.  I'm looking over setting up a LDAP server for various software packages.  Various questions and support issues.

Thursday, October 18, 2012

Ubuntu Thin Client Alpha Release & Updates

There are times when working on thin client updates that you feel like pounding your head on the table, and then with a steady work approach you start to see that a lot of items are being crossed off your pad of paper.  We have two thin client models (HP 5725 and 5745) and it takes some testing and tuning to get the same operating system to work on both.  I can't even imagine the cost and struggle of those that have to load operating systems on dissimilar PC hardware with 10s or 100s of different models.  Once I get these two working, we're done.

I was able to get an alpha release into the hands of a few people on the 5725s and they are testing.  SSH tunnels are stable and working to the GNOME desktop.  The screensavers are running on the local hardware and locking a screen from GNOME signals the thin client to lock it remotely.  I have pulseaudio working and stable on both models and set to reasonable sound levels on reboot.

I'm working on two issues right now:  Timing and Xorg drivers.  The two models have similar hardware in terms of speed, but the 5745 is slightly faster.  So there are services and sleep statements needed at boot to ensure that everything is timing the right way.  A timer on one model might need an extra second on the other.  I was more used to the older "S" style init scripts that kind of dropped in order.  I'm tinkering with learning the new "emit" signals and getting the timing right.  But it's coming together. 

The 5745 models is using an Intel chipset for video and the 5725 is ATI.  And there are nuances to each video card.  The Intel drivers are working and seem stable.  I'm having some font artifact problems with the ATI driver when AccelMethod is set to EXA instead of XAA.  So I have been looking for PPA packages to install to fix this issue.  The ATI drivers also seem to have some issues of video deadlock with working mouse when Google Earth is started.  I know I read a technical journal about that issue and will get it fixed and working.

Hopefully by next week, I'll be able to get these builds out to a wider audience for testing and see how it goes. Overall, a very productive week.

Other Projects:

Normal support questions and issues, regular meetings, installed and tested Firefox 16.0.1 and Java 1.6.37 and put them into production.  Sadly no Acrobat Reader updates for many many months; Adobe there are lots of us on Linux!

Tuesday, October 09, 2012

Ubuntu Thin Client Work Continues

I took a few days off last week and this week I'm once again working on customizing the Ubuntu 10.04 build that hp released for our newer 5745 thin clients .  I hadn't really worked with Ubuntu that much and they seem to have their own way of doing things, so that has slowed the process.  There are some differences in design of startup and inetd that took a bit of tinkering and googling and now things are working as expected.  Once I got basic needed services running, I started testing all of our old customizations and making changes.  Some files are in different places and other minor issues, but nothing very difficult to update.  The HP build had an older version of the Citrix client, so I removed that and installed the latest release.  I'm rewriting the login mechanism to eliminate a step for the users and using SSH to create a tunnel from the workstation to the GNOME desktop.  I built a Glade screen to test all of the features as seen in the screenshot below.  Once all of the code is working, I'll replicate the feature set in something that is more pleasant to the eyes.  I have been teaching myself python-clutter as time allows.  The authentication module is running local to the thin client, so clutter will work great.  No remote display problems here to fight.


One interesting idea that I have had for a while now that I'm testing is the concept of running the screensaver on the thin client itself instead of on the server.  On the workstations currently in production, users log into GNOME and gnome-screensaver is running from the server.  Because I didn't want the traffic running over the network, the screensaver was set to blank/black only.  It would not be a good thing to have 100 users with locked screens and PacMan running over remote display. :)   What I am testing now is xscreensaver running on the local hardware.  When the user does Alt-Control-L from GNOME, it activates the screensaver on the workstation.   Users love to see their badges and logos on the screen, and it gives them a sense of feeling of ownership of the session.  The small amount of time to tinker with this idea has been worthwhile.  From time to time there has also been talk of using the screensaver to publish information about upcoming events, so we should be able to support that with no problems.  Right now this is in a R&D/testing state only.

95% of our workstations are still running the older HP 5725 hardware, of which there have been no updates for a while now.  I added all of the packages required for the older hardware (ATI video card driver) and then used Clonezilla to do a backup and restore.  The older hardware worked like a champ; just a few BUSID changes to xorg.conf and it's working.  A few more iterations of testing this 'backport' and it will be working fine; and then I can start using FOG.

I have just started testing the code that we have to download a configuration file from our server and automatically generate a working xorg.conf file.  Once I have that process working, I can get some alpha testers on this code.  I hope to have something for them to test later this week.

Other projects:  Working on coordinating a feature in Zimbra to support drop and drag of email into PDF format; getting ready to install LibreOffice 3.6.2 to fix a few bugs; normal support issues and questions; patched the latest version of Flash;  worked on trying to get Java 1.7 installed  -- still some apps that don't work correctly; testing Firefox 16.