Setting the internal clock to UTC on dual boot systems

As anyone who has attended a RH124 or higher class, or has any experience in Unix/Linux knows, we usually set the system to assume that the local clock runs in UTC. This gives us the advantage that the correction for daylight savings time (DST) gets applied automatically.

The problem with that is that on a dual boot system, Windows automatically assumes that the local clock runs in the local time zone, which messes things up.

The solution is one quick registry hack away:

Start Windows, open regedit, and add a 32bit DWORD in this location:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal=1

That’s all there is to it.

Really.

Original source (in German) is here.

Upgrading to openSUSE 12.3 with zypper, and a short first look at the new 12.3

Like I already said before, openSUSE 12.3 was released today, and I’ve done the usual live upgrade with zypper.

The upgrade itself worked without any problems, and the resulting installation was usable without issues right from the start.

I logged into KDE 4.10 and everything that I’ve tried works just fine. I admit, I can’t say anything about performance as my test machine is accessed via a NoMachine remote desktop session.

After that I upgraded the KDE 4.10.0 to 4.10.1 from the opensuse build service, and that also went well and posed no problems afterwards. Now I’m waiting for my own repository for 12.3 to rebuild against KDE:Release:410.

I’m pretty confident in saying that with 12.3 the process of a live update via zypper can be done without major fear, as long as one has ones repositories set up properly, and with the right priorities (packman and KDE from OBS should have a higher priority than the stop openSUSE repositories).

openSUSE 12.3 is here

Today, openSUSE 12.3 got released after 6 months of hard work by openSUSE members and contributors.

As usual, I’m doing a zypper live upgrade, but so far it’s still downloading packages, so I can’t say anything about 12.3 just yet.

I am going to post a review of the process and the results after it is finished. In the mean time, if you’re in the area (southern Germany), why not go to the release party in Nürnberg? It starts at 7pm at artefakt.

UNIX and Linux – an introduction

As part of my job a senior Linux systems engineer and freelance consultant, I am often asked to do staff training on various Unix and linux related topics. One such training is “UNIX and Linux – an introduction”, a 2-day intensive course which I developed.

The content is aimed individuals who are familiar with Windows back-office operations.

Click on the Slideshare link to access a read-only copy of the presentation.

Linux kernel 3.8 has been released

As announced on the Heise newsticker (article in german) the linux kernel version 3.8 has been released. If you look closely on kernel.org though, you’ll find that the latest stable version is still 3.7.9, but I don’t know if that’s because of something about the 3.8 kernel, or just because I looked there too early.

There are several interesting things in that version:

On the server-side the most important new feature, in my opinion, is the possibility to create namespace containers as a regular user. Such a container can be understood similar to a chroot jail, or a virtual machine, so that regular users can run privileged applications inside a container and not endanger the integrity of the system as a whole. Also there’s now a Ballon driver for Hyper-V which means that a Virtual Machine with a linux guest running 3.8 can release memory to the Windows host that runs it, and reclaim that memory later.

Also, there is improved support for the modern NUMA architectures, and lots of improvements for btrfs and ext4fs.

On the desktop the most important changes are better 3d hardware acceleration support with the Nouveau driver, a driver for Phillips PSC724 “Ultimate Edge” sound cards, and several improvements for DMA handling in regard with video streaming.

For mobile devices (and of course, servers and desktops with SSD storage) there is a new filesystem, f2fs, which is specifically designed for flash storage.

The upcoming openSUSE 12.3 release, which is scheduled for around mid-March, is still using the 3.7.7 kernel, or at least was last time I looked, and I don’t think the openSUSE team is going to switch kernels just 3 weeks before the gold master.

If you want to read about the 3.8 kernel in greater detail the kernel log on heise open is quite good (but in german).

KDE 4.10.0, a very first quick glance

KDE 4.10 has been released, and I have upgraded my old desktop computer that sits on a shelf in our home server room and runs a NoMachine server to have KDE 4.10.0 on it.

First attempt: migrate my existing KDE 4.9.5 desktop environment.

First result: failure. Basically nothing related to kontact/KDEPIM works after this.

Second attempt: delete everything kde related from that home folder (basically ~/.kde*, ~/.local and ~/.config) and try again.

Second result: after going through the “wizard”, kontact/KDEPIM still needs too many additional steps to be actually usable, but after that it sort of works. I have no idea how much of it will still work if ~ is on a nfs drive, though.

Overall opinion: I hope that KDE 4.10 has matured enough once openSUSE 12.3 rolls around with it as the default KDE desktop.

A short sum-up about openSUSE 12.2

I’ve done it, and upgraded my wife’s and my own laptop to openSUSE 12.2 with zypper, following the same procedure as mentioned before. My experiences so far:

[ad name=”new in-post ad”]

  • My wife had trouble with pulseaudio / phonon playing correctly through HDMI to the built-in speakers on her monitor. I had to actually delete all user settings for phonon, pulseaudio, and gstreamer, but now it works without a hitch.
  • Initially some KDE apps didn’t want to remember that they are supposed to start minimized. Same as before, deleting the settings files solved it.
  • Certain older software that comes only as binary does not work anymore. No actual surprise there.
  • Certain older games from some of the humble bundles that comes as binary RPM got uninstalled because openSUSE 12.2 does not have the required libraries anymore. No surprise there either, and no personal loss as I played those only on my phone.
  • Certain older software does not build anymore because it comes with old, outdated versions of some required libraries, and those don’t build with gcc 4.7.1.
  • After a resume, the network interfaces are still down. Not good when you’re operating on a NIS/NFS setup. Workaround: disable automatic suspend to disk.

Enough of the bad, here are some few of the positive things that stand out:

  • With the 3.4 kernel we can have Solaar which basically monitors the battery charge in logitech wireless equipment.
  • Steam runs on it. Yep, steam as in http://store.steampowered.com/. Maybe linux gaming will finally get somewhere where Loki games should have taken it 10 years ago.
  • The whole setup feels snappier than 12.1.

All in all, this upgrade is one of the better ones. I like it so far.

openSUSE bandaid: no gpg agent, no ssh agent after updating from KDE:Release:49

If you notice that your ssh agent and/or gpg agent aren’t running after logging in to KDE4 on openSUSE, and you just upgraded your KDE from the KDE:Release:49 buildservice repository, there is a simple fix.

Run this command as root:

ln -sf /etc/X11/xdm/Xsession /usr/share/kde4/config/kdm/Xsession

That will do it. By the way, the bug report for this bug is here. Please add your 2 cents worth if you are hit by it.

Linux Bandaid: KDE apps can’t open TGA image files

If you are working with TGA images a lot, you might have seen the bug where KDE apps like Gwenview can’t open them and give you a weird message about being unable to read metadata.

This is a bug in qt. KDE4 brings its own image readers for TGA, but only uses them when the qt ones are not available. So let’s delete them (as root, of course):

[ad name=”new in-post ad”]

rm /usr/lib/debug/usr/lib64/qt4/plugins/imageformats/libqtga.so.debug
rm /usr/lib/qt4/plugins/imageformats/libqtga.so
rm /usr/lib64/qt4/plugins/imageformats/libqtga.so

Some of these commands can fail, depending on whether you have debug information or 64bit versions installed.