Installing Ubuntu (Xubuntu) 16.04 Xenial – Problems and Solutions

Reluctant upgrade

I tend not to upgrade unless I really have to – my main laptop had been on Ubuntu (Xubuntu) 12.10 Quantal since 2012. Although the Linux installation process has been increasing leaps (versus the old days when I rejoiced just having CD audio working after various modprode commands…), there are still a lot of problems – and you’re back to the frustration of Google and forum searching.

One example when I first installed Quantal was unreliable reboot on my laptop (a Thinkpad W520) – sometimes it just got stuck. Eventually I came across a solution to add below line to /etc/default/grub

RUB_CMDLINE_LINUX_DEFAULT="nox2apic quiet splash"

This is the kind of things that makes me reluctant to upgrade – I had similar experiences every time, moving from 9.10 (Karmic) to 11.04 (Natty) to 12.10. Who knows what other challenges lie ahead in the new version?

I hanged on by using backport repos like http://old-releases.ubuntu.com, or if not there (e.g. Java 8), then just downloading binaries directly. But it got increasingly tough – for example I couldn’t get the newest Chrome due to some dependent package being unavailable. And as I’m just starting a course in Coursera which requires me to install even more things, I decided it’s time to make the jump.

And surprise surprise – it’s far from smooth sailing.

usb-boot-creator always crashes

The first thing before doing the installation is to create the bootable USB disk. I recalled using Unetbootin before but these days the first hit on Google is using this tool usb-boot-creator. So I installed it, got it to write the Xubuntu 16.04 ISO to my USB SD card, and after doing a bunch of copying it just crashed with core dump.

Admittedly, the usb-boot-creator must have been a somewhat old version (whatever the latest version available for backport for Quantal); but some Google search revealed this issue had persisted for at least several Ubuntu releases. I don’t know if the newest version is good now, but I just went back to Unetbootin and it worked.

Solution: Use Unetbootin

Stuck on boot: “TPM error occurred attempting to read a pcr value”

Now I had my bootable disk, and I was able to boot to Unetbootin’s screen. But after a few seconds, the screen froze displaying this error: “TPM error occurred attempting to read a pcr value”. I haven’t even got to the Ubuntu installation screen yet and I already couldn’t proceed!

More Googling, and I found it’s something to do with my laptop’s “security chip”. But given the number of hits it’s definitely not a rare issue. Some people said they got round the issue by disabling the chip, while some other said by enabling it. (Ha, what contradiction).

So I checked in my BIOS, and found the current setting for mine was “Inactive”, and could be changed to Active or Disabled. I chose the latter.

Solution: In BIOS, change setting to Disable the security chip.

Man, I recall it wasn’t even that bad in Quantal…

Installation screen hangs at “Preparing to install”

Always a sigh of relief once the GUI showed up and I was presented with the installation wizard. After first few steps to select language and input wifi details, it gave the selection on whether to “update from web” and “get from 3rd party” for software packages. Both seem reasonable so I selected both, then moved on to the next step. The message showed “Preparing to install”, and cursor started spinning, and it just got stuck there.

There are so many hits on Google when searching for “preparing to install hangs”, not just for Xenial but also for previous versions, so apparently a lot of people have installation problems at that stage, and a wide variety of workarounds are suggested. Quite a few mentioned this could be due to the installer couldn’t figure out your partition table etc etc. But fortunately for me, it’s nothing that complicated –

Solution: uncheck “update form web” or “get from 3rd party”

It sounds nice to have these options, but that’s only if they work!

How to reuse existing /home partition on new installation

OK, this is not so much an issue but rather the somewhat user-unfriendlyness of it. I have my /home in a separate partition to make OS upgrade easier as I can keep all my existing settings. But how do I get the new installation to recognise it? A quick Google search yielded an answer, though the process is somewhat non-obvious:

  1. Select the “Something Else” option when prompted how to install
  2. In the partition GUI, select the partition of where your existing /home is, then click “Change…” button
  3. Select the format (I’m not sure what would happen if you select one that doesn’t match the existing one), DO NOT select “format” checkbox, then select the mount point which should be /home

With that, the rest of the standard installation worked fine – for now. Once you got into the brand new OS, more fun yet to come …

Japanese / Chinese input – where is it now?

In Quantal I used to use IBus for inputting Japanese (a method called Anthy) and Chinese (Pinyin). Apparently in Xenial it’s changed to something new (does it mean better??) called Fcitx. I’m not sure why these things keep changing – there used to be SCIM, then IBus, and now this fcitx. It worked fine before – what’s the improvement here? And it’s not the most obvious how to get Fcitx working:

  1. Settings > Language > Install Japanese and Chinese. Re-login.
  2. Go back to that dialog, Keyboard Input option now has fcitx. Select it. Re-login (otherwise won’t show in tray).
  3. From tray > Configure Fcitx > Click “+” sign, then search for “Mozc” for Japanese and “Pinyin” for Chinese.

I had a few confusing turns there as in that search screen just entering “Japanese” or “Chinese” just gives you the Japanese and Chinese keyboard layouts, NOT the input methods. How am I supposed to know that to enter Japanese I need to install something called “Mozc”?

At least I can type in Japanese now… but wait…

Japanese input shows black pop up

As you type, what normally shows as tooltip for suggested words just shows a black rectangle instead. More Googling – and some guy somehow managed to find the issue is due to some missing Qt library (why isn’t it installed as part of the dependencies?). I installed it, but still no change – oh right, yes, have to re-login again!

Solution: install package qtdeclarative5-qtquick2-plugin, then re-login.

USB flash drive not mounting: “thunar-volman: Unsupported USB device type “(null)””

First of all, I should mention that my USB multi-card reader, external USB hard drives, and even the laptop’s built-in SD card reader, all work fine. But there’s a particular USB stick that was working perfectly fine before upgrade, but now giving this error in Xenial when plugged in:

thunar-volman: Unsupported USB device type "usb".
thunar-volman: Unsupported USB device type "(null)".

(By the way, the error shows up in the terminal window, instead of a GUI pop-up!)

Admittedly it’s a very old USB device – Creative MUVO, I’m pretty sure it’s no longer manufactured, but it’s a sturdy little thing that for many years I’ve been using to listen to music while inline-skating. This has got to work!

I checked the usual places – dmesg shows it has detected a USB device being connected, but nothing about it being added as a storage device under dev/sdXX; sudo fdisk -l doesn’t show it at all, so it’s not even possible to mount manually.

After the usual web search and trying many false suggestions, this one hit the mark:

Solution: Run sudo modprobe usb_storage

You gotta be joking right? Like I said in the beginning of this post, I thought the “modprobe” stuff is something that belongs to the last decade. And now with the newest and greatest version, I have to dig out modprobe again for my USD stick to be recognised?

rdesktop not working due to “ERROR: CredSSP: Initialize failed, do you have correct kerberos tgt”

My PC at work is Windows and I have been using rdesktop to remote to it without issue. But of course, you can’t be certain that everything will continue to work in a new release right? After installing Xenial, using rdesktop gave me this error: ERROR: CredSSP: Initialize failed, do you have correct kerberos tgt

Googling again. Some people suggested to build rdesktop with flag --disable-credssp. Can’t be serious? Upgrading to a new release and I have to go back to build from source?

I did more digging, and found rdesktop 1.8.0 has various new “features” related to credssp. I’m not sure what these features are, so I found somewhere to download the older rdesktop 1.7.x package, and lo and behold, it worked again!

Solution: Install rdesktop 1.7.x instead of 1.8.x

After unlock screen, it remains blank (NO SOLUTION)

Power management stuff on laptops are typically hard to get working on Linux. But in Quantal I was pretty happy to have all the features I needed working:

  • Close the lid to turn off the screen, opening turns screen on again, system does not go to sleep – typically when I am away for a short while.
  • Suspend the system

In Xenial the suspend works fine (and it resumes much more quickly than before which is good); but the close lid action has problem like this:

  1. Close lid – screen turns off – good…
  2. Open lid – GUI prompt shows for unlock screen – good…
  3. Type in password, then screen goes blank – I’m stuck!

I am able to switch to the text session with Ctrl-Alt-F1, but there is no way to bring the GUI session F7 back. Some people suggested “workaround” like restarting lightdm (sudo service lightdm restart) or killing X. But doing this, all your GUI applications would be shut down (I’ve lost some work because of this), so is not really an acceptable workaround.

Some more digging narrowed down to light-locker, a default component for managing screen-saver and locking screen, as the likely culprit, as seen in lots of posts, for example:

So I went into the usual frustrating trial-and-error mode, blindly trying various suggested workarounds. Some mentioned toggling settings in light-locker-settings. I found it isn’t installed by default (why?), so I installed it myself, but that was a problem in itself:

light-locker-settings does not start

It wouldn’t start when I clicked its icon in System Settings. Fine, I tried starting it directly in command line, and it gave me this:

  File "/usr/share/light-locker-settings/light-locker-settings/light-locker-settings.py", line 29, in <module>
    from gi.repository import Gtk, GLib, Gio
  ImportError: No module named gi.repository

Another missing dependency, requiring another search to fix it:

Solution: install package python-gi

But even after playing with the settings there, it still didn’t help with the issue with the screen going blank. Other things I tried:

  • Uninstalling light-locker
  • Install xscreensaver (some people claimed this can replace light-locker and should work)
  • Trying various combinations of settings in Power Management and light-locker-settings

Still, nothing helped.

I wasted enough time on this and I decided to live with it now, as I normally do suspend from the session, instead of just closing the lid. I’m “grateful” that at least doing normal suspend works. But I’m still very uncomfortable with the behaviour that closing the lid will effectively kills my GUI session (i.e. losing all work).

No solution

Python “cannot import name GExiv2”

I have a python script for modifying EXIF time using the GExiv2 library. This used to require only the python-gi package but now even with that I still got the error
ImportError: cannot import name GExiv2. Or with Python3, a slightly different ImportError: cannot import name GExiv2, introspection typelib not found.

Eventually I found that now the GExiv2 wrapper needs to be installed separately, as suggested in http://stackoverflow.com/questions/19150947/how-to-use-gexiv2-in-python. But as that answer was several years old, I presume this isn’t a new change but just that I had been using the older version for “too long”.

Solution: install package gir1.2-gexiv2-0.10

Conclusion

For my personal use, the move from Quantal to Xenial didn’t seem to bring much benefits, apart from the fact that I can now get newer versions of the software packages.

Same as my previous experiences, there were various issues I had to sort out just to get the system back to having the “same functionalities” as before. And there is at least this one issue with lid closing that I could not find any solution yet.

There are other minor things which I haven’t mentioned here as they “work”, but became worse from my point of view – such as gThumb changing its whole interface to confusing icons instead of nice and clear text buttons previously.

But as with all things free, I really shouldn’t complain too much, as there’s a lot of volunteer effort going in that made the majority of things work, which is very commendable and I hugely appreciate (I couldn’t imagine myself having the time to do the same). But as before, “upgrading” remains a dreaded task.