Simula Research Laboratory / Center for Resilient Networks and Applications / NorNet
Homepage of Thomas Dreibholz / Thomas Dreibholz's Little Ubuntu Linux Install Page

Thomas Dreibholz's Little Ubuntu Linux Installation Guide

📰 News

💡 Description

Ubuntu Linux already comes with a set of useful programs on the installation CD itself. However, a basic install lacks of many different things (e.g. media codecs, compilers and development files, LaTeX). The repository file (sources.list) and install script on this page have been created to automatically install the missing stuff after setting up a basic Ubuntu system from CD. The package choice of this script is intended to create a system allowing for software development, LaTeX document processing, HTML editing, web browsing, networking and multimedia.

đŸ“Ļ Installation

The following items are a step-by-step installation guide.

Get an Installation CD

First, you have to create an Ubuntu installation CD for your system. The installation CD depends on the choice of the desktop environment (KDE with Kubuntu, GNOME with Ubuntu, XFCE with Xubuntu) and CPU type. You can boot from the CD and test the desktop. However, if unsure, I recommend Kubuntu with KDE desktop.
Download an installation CD/USB images here:

After download, burn the image to a CD or write the USB image to an USB stick.

Install from CD

Boot your installation CD/USB stick and start the installer. The installation should be self-explaining.
For the partitioning of your harddisk, I recommend the following partition sizes:

From my experience, BTRFS is better than the default setting ext4.
After the new system has booted, verify that your network access is okay. If necessary, configure it first. You need Internet access (e.g. DSL) for the following steps.

Prepare Repositories

The next step is to set up the repository sources where to download additional software from. First, get the sources.list file from the Download section for the version of your Ubuntu distribution. Then, open a shell and copy this file to the appropriate place:

sudo cp sources.list.Version /etc/apt/sources.list

Note: sudo executes the copy command with root permissions (since only the administrator of a computer may do this)! You will be asked for your user account's password.
The new repository list adds repositories for media codecs and RSerPool. All files are signed with keys for security reasons. In order to check the validity of the packages downloaded from these repositories, you need to install the repository's public key with the following command:

./install.Version initial

Run the Install Script

Download the install script from the Download section. Make it executable using the following command:

chmod +x ./install.Version

Open the script in an editor (e.g. kate, emacs, etc.) and have a look! If everything is okay, run the script (as root using sudo):


Usually, you can agree to all questions. However, do not agree if the install program complains about being unable to verify a package signature! If you get such an error, check repository configuration! The install script will start downloading all files – about 1.5 GiB – and install them after the download. If there is a problem, try to execute the script again; sometimes the download servers are just overloaded.
When the installation is completed, reboot your system (since usually the kernel has been updated from the version on CD/USB stick). After the system has booted, you can enjoy your new Ubuntu Linux installation!

Keep Your System Up-to-Date

If there are updates to be installed, your system will inform you by a symbol in the task bar. You can click on the symbol to start a self-explaining update. You can also manually check for updates and install them using:

sudo apt-get update
sudo apt-get dist-upgrade -y

Always try to keep your system up-to-date in order to avoid security risks!

Additional Steps to Install OMNeT++

This step is only necessary if you want to install the discrete event simulation toolkit OMNeT++. Your Ubuntu installation already includes all packages to install OMNeT+. In order to install it, download the latest version from and unpack the archive to an appropriate directory in your home directory. I recommend to create a directory src for all your sources and unpack OMNeT++ there.
Assuming the directory where you have unpacked OMNeT++ is /home/user/src/omnetpp-VERSION, add the following lines to the file .bashrc in your home directory (This file is the shell configuration which is loaded every time you log in and start a new shell):

export OMNETPPDIR=/home/user/src/omnetpp-VERSION
export TCL_LIBRARY=/usr/lib/tcl8.6
ulimit -c unlimited

Then, add additional dependencies:

sudo apt install -y \
   python3-numpy python3-scipy python3-pandas python3-matplotlib python3-posix-ipc \
   openscenegraph-plugin-osgearth libosgearth-dev \
   openmpi-bin libopenmpi-dev

This setup works for Tcl/Tk 8.6. If your use another Tcl/Tk version, you have to review the TCL_LIBRARY setting. The ulimit command turns the creation of core dumps for debugging on.
The new settings are activated the next time you start a bash shell (i.e. when you open a new terminal window). You should now be ready to configure and compile OMNeT++ in its directory:

source setenv

💾 Download

Download the corresponding sources.list and install script for your Ubuntu version here.

Script for Ubuntu 21.10 (Impish Indri)

Script for Ubuntu 21.04 (Hirsute Hippo)

Script for Ubuntu 20.10 (Groovy Gorilla)

Script for Ubuntu 20.04 (Focal Fossa)

Script for Ubuntu 19.10 (Eoan Ermine)

Script for Ubuntu 19.04 (Disco Dingo)

Script for Ubuntu 18.10 (Cosmic Cuttlefish)

Script for Ubuntu 18.04 (Bionic Beaver)

Script for Ubuntu 17.10 (Artful Aardvark)

Script for Ubuntu 17.04 (Zesty Zapus)

Script for Ubuntu 16.10 (Yakkety Yak)

Script for Ubuntu 15.10 (Wily Werewolf)

Script for Ubuntu 15.04 (Vivid Vervet)

Script for Ubuntu 14.10 (Utopic Unicorn)

Script for Ubuntu 14.04 (Trusty Tahr)

Script for Ubuntu 13.10 (Saucy Salamander)

Script for Ubuntu 13.04 (Raring Ringtail)

Script for Ubuntu 12.10 (Quantal Quetzal)

Script for Ubuntu 12.04 (Precise Pangolin)

Script for Ubuntu 11.10 (Oneiric Ocelot)

Script for Ubuntu 11.04 (Natty Narwhal)

Script for Ubuntu 10.10 (Maverick Meerkat)

Script for Ubuntu 10.04 (Lucid Lynx)

Script for Ubuntu 9.10 (Karmic Koala)

Script for Ubuntu 9.04 (Jaunty Jackalope)

Script for Ubuntu 8.10 (Intrepid Ibex)

Script for Ubuntu 8.04 (Hardy Heron)

Script for Ubuntu 7.10 (Gutsy Gibbon)

Script for Ubuntu 7.04 (Feisty Fawn)