DisplayLink and Ubuntu 17.04 (intel)

I had a problem with DisplayLink drivers on my Dell Precision 5510 (XPS 15) after upgrading to Ubuntu 17.04.

The monitors connected to the DisplayLink device was enabled and identified, but the screens stayed all black.

Of course, there’s a solution. I found this evdi issue, containing a solution.

Create the file (and directory) /etc/X11/xorg.conf.d/20-intel.conf, with the content:

Section "Device"
  Identifier "Intel Graphics"
  Driver "Intel"
  Option "AccelMethod" "sna"
  Option "TearFree" "true"
  Option "TripleBuffer" "true"
  Option "MigrationHeuristic" "greedy"
  Option "Tiling" "true"
  Option "Pageflip" "true"
  Option "ExaNoComposite" "false"
  Option "Tiling" "true"
  Option "Pageflip" "true"
EndSection

Credit goes to github/ajbogh.

Make Thunderbird great again!

I have many times tried finding a modern replacement for Thunderbird, but it always ends without success.

There’s Nylas Mail, Hiri etc, but there has always been some needed feature (for me) missing.

Then I heard about Monterail, which basically is a functional theme based on a Thunderbird mock up. And just recently an Arc (theme) integration for Thunderbird has been released.

The two together makes Thunderbird quite pleasant to look at.

Dual boot Linux and Windows – BIOS system time incorrect

I, unfortunately, have to dual boot to Windows once and a while, due to requirements where I currently have an assignment.

What I’ve noticed and that really grind my gears, is that when booting Windows after I have been running Linux the BIOS System time is incorrect by -2 hours.

After searching for information how to solve this, I found a thread on the Microsoft forum with a user that had the same problem and learned something new:

Windows uses BIOS time to hold ‘local’ time (UTC+offset+daylight savings according to the time zone used) and Linux uses BIOS time to hold Universal Time (UTC).

That got me to the ever so good Arch Linux Wiki (this is an area that I think Ubuntu has become weaker in; updated and good information in a community wiki. Don’t get me wrong, I love askubuntu.com).

Open Windows Powershell and run it as administrator:

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

If this does not solve it, try changing REG_DWORD to REG_QWORD.

HP DisplayLink docking station in Ubuntu

DisplayLink docking stations works really good in Ubuntu. A list of supported devices can be found here.

I had the possibility to try out with one from HP, and there was some additional steps except from installing the DisplayLink driver for Ubuntu that was necessary to get a good experience (at least for me).

Start by downloading the deb package for Ubuntu here. Extract and install:

cd ~/Downloads
unzip DisplayLink\ USB\ Graphics\ Software\ for\ Ubuntu\ 1.2.1.zip
sudo bash displaylink-driver-1.2.65.run

It is easiest to just reboot your computer after the installation is done. I usually don’t plugin the docking station until I get to lightdm login screen.

You might have to adjust the order of the monitors under System settings, Display you have more than one external monitor connected.

Every time the HP docking station is connected, it will mount a USB mass storage device, containing the Windows drivers. This is quite annoying, but it’s easy to fix by blacklisting it with a udev rule. I also wanted to blacklist the Ethernet interface, since it isn’t used (and also caused problems NetworkManager dropping the wireless connections sometimes).

For the version of the docking station I was using, the following two rules would take care of that:

sudo bash -c 'tee /etc/udev/rules.d/98-displaylink-ignore.rules <<EOF
# Disable displaylink (port replicator) ethernet device
SUBSYSTEM=="usb", DRIVER=="cdc_ncm", ATTRS{interface}=="HP USB Giga Ethernet", \
ATTR{authorized}="0"

# Disable displaylink (port replicator) usb disk
SUBSYSTEM=="usb", ATTRS{idProduct}=="1165", ATTRS{idVendor}=="048d", \
ATTRS{manufacturer}=="iTE Tech", ATTR{authorized}="0"
EOF'

As always, udevadm info -a -p and the corresponding sysfs class path for the device, is the way to find correct information for your particular device.

Reload the udev rules without restarting:

sudo udevadm control --reload-rules