My Avatar

LanternD's Castle

PhD Student in ECE @ MSU

Thinks to Do After Installing Ubuntu 17.10


A quick note. It includes installing packages and configuring the system. Most of the stuff works for other Ubuntu versions as well.



sudo apt install git emacs25 vim texlive-full python-apt python-pip python3-pip curl zsh ruby-full cmake silversearcher-ag autojump gir1.2-gtop-2.0 gir1.2-networkmanager-1.0

Package and Software to Install

Add sudo if needed.


apt install git


apt install curl

Zsh (Z shell)

apt-get install zsh

Follows by oh-my-zsh (Github Link).

sh -c "$(curl -fsSL"


Of cause.


Pyenv/pyenv - GitHub

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncursesservice cups restart5-dev libncursesw5-dev xz-utils tk-dev

curl -L bash

Don’t forget the add PATH and eval stuff to the .bashrc (Step 3 in the installation tutorial).

After the installation, use pyenv to install certain python version.

python global 3.6.x

Get ride of every annoying version selection between Python 2.7.x and 3.6.x.


apt install python-pip python3-pip


apt install emacs25


apt install vim


Use the client provided by Dropbox

-Google Drive-

Update: I don’t use Google Drive anymore because it doesn’t officially support Linux.

Bad solution: In Ubuntu Settings, enter Online Accounts, and add Google account. After a while, the files in Google Drive will be synchonized as a mounted folder.

Better solution: the above method is not convenient. Use Grive2 instead.

Just follow the instructions. Remember to add the .griveignore file before running grive -a command.

LaTeX environment


Tutorial: Ruby Installation

apt-get install ruby-full

The packages in ruby:


Simply apt install cmake.


Tutorial: WhatPulse Linux Installation



Sogou Pinyin Input Method

Tutorial: Sogou Pinyin Official Help


Tutorial: the_silver_searcher - Github

A fast code searching tool.

apt-get install silversearcher-ag


agi autojump

(after adding ubuntu plugins in zsh, we will have alias agi="sudo apt-get install.)


Tutorial: How to Install PostgreSQL 10 on Ubuntu 16.04 and 14.04 LTS

Add the Apt Repo to source list in Ubuntu and then sudo install.

sudo apt-get install postgresql postgresql-contrib

Python use psycopg2 to manipulate the PostgreSQL database. Do not forget to install it as well.

pip install psycopg2

Tutorial: Setting a password for the postgres user

Use psql command and \password command to do so.

Update: it would be less painful to create a new role (user) and use it to create a database.


A python-written program that manage PostgreSQL. Install it using python wheel. Use python in system (not those in pyenv) to install. This app requires sudo permission to run.

GNU Radio

Tutorials: GNURadio - GitHub

Follow the instruction. Use pybombs to install it. It will take care of UHD at the same time.


pip install powerline-status

GitHub SSH key

Follow the instructions on these two posts:

Remove Unused Folders in Home

Tutorial: Ubuntu - permanently remove ~/Videos and ~/Public

Change the following:

Then we can rmdir those folders.

Add Fonts

Tutorial: How To Install New Fonts In Ubuntu 14.04 and 16.04

Font list:

Emacs Configuration

  1. First git clone the .emacs.d to ~ directory.
  2. Use symbolic link to create ~/.spacemacs.d folder. ln -s ~/.emacs.d/.spacemacs.d ~/.spacemacs.d

Replace Caps Lock by Ctrl

Tutorial: MovingTheCtrlKey - EmacsWiki

Install GNOME Tweaks and changes the settings: Keyboard & Mouse -> Additional Layout Options -> Caps Lock key behavior -> Caps Lock is also a Ctrl.

Connect from Remote Computers

Use VNC Viewer. Download, install, login, done. Google Remote Desktop somewhat does not support Ubuntu 17.10.

Gnome Extensions

Gnome Extensions

apt install gir1.2-gtop-2.0 gir1.2-networkmanager-1.0

Remove Redundant Icons and Softwares

sudo rm -f /usr/share/applications/ sudo rm -f /usr/share/applications/ubuntu-amazon-default.desktop

sudo apt-get autoremove firefox firefox-locale-en

Beautify the UI



ZSH themes

Most of the work is done by synchronizing the .oh-my-zsh folder and .zshrc file via Dropbox, the rest things we can do is:

Enable vim in sudo mode

alias svim="sudo -E vim"

Disable Auto Printer Discovery

Tutorial: How do I disable automatic remote printer installation?

SSH timeout settings

Prevent the disconnection due to keyboard inactive.

Link: 解决SSH自动断线,无响应的问题

sudo vim /etc/ssh/ssh_config
# Add or uncomment the following code at client side
ServerAliveInterval 20
ServerAliveCountMax 999


sudo vim /etc/ssh/sshd_config
# Uncomment the following code at server side 
ClientAliveInterval 30
ClientAliveCountMax 6

(Sometimes this file is not there.)

Disqus Comment 0