After my original effort to get Debian to play nice on the X250 there were still a handful of things which weren't right. This mostly covers the remainder of the things that I had trouble with.
Automatically updating timezone based on location
I was recently in Vietnam and had to update my timezone manually - which was a minor inconvenience. There's an app called tzupdate which will attempt to determine your location and update the timezone accordingly whenever you run it. We can create a cron job to run tzupdate regularly to ensure the timezone is updated:
$ sudo pip install -U tzupdate
$ sudo crontab -eenter the following - it'll cause tzupdate to run on the hour, every hour
0 * * * * tzupdate
Two-fingered scroll left/right
When setting up my touchpad I neglected to setup the left/right scrolling - adding the followng line to /etc/X11/xorg.conf.d/50-synaptics.conf resolves this:
Option "HorizTwoFingerScroll" "1"
For more info on the Synaptics touchpad driver, as always ArchLinux has some excellent documentation on the subject.
iPhone - Bluetooth and USB tethering
Easiest way is to prevent network manager from touching resolv.conf - and make sure you have a handful of good nameservers you can rely on. To do this edit /etc/NetworkManager/NetworkManager.conf and add the following to the [main] section:
dns=none
Then add a handful of dns services to /etc/resolv.conf:
$ cat > /etc/resolv.conf << RESOLVEND
#Google Public DNS
nameserver 8.8.8.8
nameserver 8.8.4.4
# OpenDNS
nameserver 208.67.222.222
nameserver 208.67.220.220
RESOLVEND
Connecting over USB is a little easier
$ sudo modprobe ipheth
If you're having trouble then apparently ipheth sometimes requires the iphone filesystem to be mounted - which means installing ifuse:
$ sudo apt-get install libimobiledevice-dev libfuse-dev
$ git clone https://github.com/libimobiledevice/ifuse
$ cd ifuse/
$ ./autogen.sh && ./configure && make && sudo make install
$ mkdir ~/iPhone && sudo ifuse ~/iPhoneThinkpad X250's Mobile Broadband setup (Vodafone CZ)
I had a bit of a nightmare of a time connecting to Vodafone using the builtin 4G modem. I think the main thing is that most places on the internet say that for pre-paid SIM you should set the APN to "ointernet" - when actually "internet" is correct. However I did find that I needed to set prefer_mbim to Y for the device:
$ sudo echo "options cdc_ncm prefer_mbim=Y" >> /etc/modprobe.d/cdc_ncm.conf
$ sudo cat /etc/NetworkManager/system-connections/Vodafone\ CZ
[connection]
id=Vodafone CZ
uuid=2756323d-e364-49dc-9d86-92b8c2a44d15
type=gsm
autoconnect=false
permissions=
secondaries=
[gsm]
apn=internet
number=*99***1#
password-flags=1
pin=1234
[serial]
baud=115200
[ipv4]
dns=8.8.8.8;
dns-search=
method=auto
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=autoXTerm looks weird in XFCE
I've since moved nearly full-time to using Xmonad, but when I go back to XFCE and try to use xterm it has an extremely tiny font:
To make them appear a little nicer we need to edit ~/.Xresources - so that it looks like the below
Then fix up .Xresources:
$ cat .Xresources
XTerm*faceName: Source Code Pro
XTerm*faceSize: 10
XTerm*metaSendsEscape: true
! Fonts {{{
Xft.antialias: true
Xft.hinting: true
Xft.rgba: rgb
Xft.hintstyle: hintfull
Xft.dpi: 120
! }}}After you restart X and relaunch an xterm everything should appear little nicer