I chose Arch Linux as my distribution, whose packages are rather new. I recommend it to all oiers with Linux experience.

To install Arch Linux, just follow Arch Linux Wiki. You can setup a virtual machine on Windows to emulate installing. It can be hard to install Arch Linux for one’s first time.

There are some tips for installation.

  1. If you’re with a UEFI motherboard, pick up rEFInd as your boot-loader, which comes with fancy interface and better UEFI support.
  2. Keep the flash stick with arch ISO. You may need it for a re-installation.


Graphics Cards

There is only a Intel graphics card with my laptop, which means that I don’t have to configure about graphics card. As far as I know, the experience of dual graphics cards on Linux may be not satisfying. Hope you had a determined mind not to play games when you bought your laptop. T460s works fine with me. :-)

Finger Prints

It’s a pity that the latest machines of Lenovo have finger prints sensor which are not supported by Linux now. Some people on Lenovo forums are looking for official help, expecting Lenovo can contact Synaptic for better Linux support. However, there is no deadline now.

Power Saving

I simply installed acpi and tlp. TLP comes with a loads of power saving configurations. I don’t think battery life is shorter than Windows. In fact, because there is less background programs running than windows, the battery stands longer


The most amazing feature of Windows 10 is hybrid sleep, which helps the laptop suspend and restore very quickly with low power consuming.
On Linux, there is two kind of sleep. One is called Suspend that stores working status in the ram and cut off the power of units except the ram. Another is called hibernate, which stores status in swap space partition of disks. The speed of the restoring depends on I/O. Usually speaking Suspend is faster than Hibernate. But nowadays, most new laptop are with SSD, which decreases the difference. I think hibernate will just meet the needs. When you’re seeking for a better management, there is a solution that makes Linux get the same hybrid sleep like Windows and requires a little configuration. Do some searching on Internet.

Desktop Environment

I’m with KDE!
GNOME screws up with Hi-DPI supports.

Hi-DPI Support

See also Arch Linux Wiki Hi-DPI


Socks Clients

One of the most famous tools are in python. You know what I’m talking about.

CLI Tools

Sometimes you need to forwarding all network requests of certain application. Proxychains can do that.

  • install proxychains
  • configure proxy address and ports in /etc
  • start socks clients
  • exec ‘proxychains some commands with some options’

Making an alias for proxychains can be convenient to use it.

Environment Variables

Some tools respect environment variables about proxy.
exec man wget or man curl for details.

Development Environment


Install package gvim.


:makeprg defines the compiling commands.


:make can compile the program and bring up a error panel if compilation fails.


It will be convenient if pressing F12 to compile, F11 to compile and run.

Here is my .vimrc without keybinding:

set number "line number
set hls "search highlight
set go= "config gui
set autoread "auto read whenever the file is modified
set tabstop=2 "tab size
set makeprg=g++\ %\ -o\ %:r\ -Wall
colo molokai "set color schelme
sy on "synatx highlight


Append set max-value-size unlimited to ~/.gdbinit so as to display large arrary.


Atom is a modern editor with lots of plugins.


Atom depends on nodejs and npm.
However, sudo npm may make a mess.
nvm is such a shell function that it helps with nodejs version management and sudo issues.
You can find nvm on GitHub.


For some reason THEY block, so cnpm is a good choice for those in China. Taobao maintains a mirror of


The shell of arch ISO is impressive, which has correcting, completion, and color prompt.It’s zsh.
Zsh is kind of complex. The oh-my-zsh project decrease the complexity.
Install them and have fun with zsh!

By the way, the default prompt theme of arch ISO is gianu, which can be found in oh-my-zsh.