There are two approaches to install the AIT QKD R10 software.

  1. By downloading the sources, compiling, creating the package and then manually installing the package.
  2. By adding our AIT Debian repository to your apt-sources and run apt-get install commands.

Choose the branch

The AIT QKD R10 has two branches:

  • master: this is the main development line. Sources here are less frequently updated but are more stable.
  • develop: this is the main channel for current development. Newer sources are placed here. However things might not be as stable and are likely to break.

Manually packaging and installation

The first method provides more workload for the user. Once the sources have been cloned from the site and compilation succeeded (for either master or develop branch), a package has to be built via

$ cd build
$ make package

Afterwards, a deb file like qkd_9.9999.3_amd64.deb has been built. Make sure that dbus is installed.

If you compile the AIT QKD R10 by yourself you may switch between several package generation pattern. We currently support 'debian8', 'ubuntu15' and 'ubuntu16' out of the box. 'ubuntu15' has been tested with Ubuntu 15.10 and Kubuntu 15.10, but might work as well for Ubuntu 15.04 (and derivatives). 'ubuntu16' works for Ubuntu 16.04 and could also be used for Ubuntu 16.10 (which is not available at the time of writing).

Note: In order to switch between the package generation patterns, you have to set the corresponding PACKAGE_* cmake option variable. This is best done using the ccmake command from within the build folder. The ccmake tool is available by installing the cmake-curses-gui package of your distribution. Ensure that only one single PACKAGE_ variable is set since cmake is currently not capable of generating more than one package file at a time.

$ sudo apt-get install dbus

Though this is normally already installed on modern Linux distributions. Finally you can install the AIT QKD R10 with:

$ sudo dpkg --install qkd_9.9999.3_amd64.deb 

However, if you lack certain packages and get error messages like these:

$ sudo dpkg --install qkd_9.9999.3_amd64.deb 
Selecting previously unselected package qkd.
(Reading database ... 40364 files and directories currently installed.)
Unpacking qkd (from qkd_9.9999.3_amd64.deb) ...
dpkg: dependency problems prevent configuration of qkd:
 qkd depends on libboost-filesystem1.49.0 (>= 1.49.0); however:
  Package libboost-filesystem1.49.0 is not installed.
 qkd depends on libboost-program-options1.49.0 (>= 1.49.0); however:
  Package libboost-program-options1.49.0 is not installed.
 qkd depends on libboost-system1.49.0 (>= 1.49.0); however:
  Package libboost-system1.49.0 is not installed.
 qkd depends on libzmq1; however:
  Package libzmq1 is not installed.
 qkd depends on libqtgui4; however:
  Package libqtgui4 is not installed.
 qkd depends on libqtdbus4; however:
  Package libqtdbus4 is not installed.
 qkd depends on libqt4-network; however:
  Package libqt4-network is not installed.
 qkd depends on libqwt6; however:
  Package libqwt6 is not installed.
 qkd depends on libcap2-bin; however:
  Package libcap2-bin is not installed.

dpkg: error processing qkd (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:

then you can still go on with installment by issuing:

$ sudo apt-get -f install

This steps have to be repeated each time new sources are available.

The dpkg --install command by itself does not resolve dependencies. However, missing packages are noted and a follow-up apt-get -f install will try to resolve these missing packages and thus finalizes the install procedure.

Package installation from AIT Debian repositories

This is the most convenient method on installation but restricted to registered users (substitute USER and PASS with your credentials in the lines below).

The AIT currently offers these repositories:

  • jessie: the master branch of the AIT QKD R10 for Debian release 8 "jessie".
  • jessie-testing: the develop branch of the AIT QKD R10 for Debian release 8 "jessie".

At first, a reference to the AIT Debian repositories must be configured. This is done by adding the GPG-Key of the repository to the key-ring and then adding the source definition to the proper apt-sources. Also be sure to support https debian repositories (a leading '#' indicates that the command has to be run with superuser privileges):

# wget -qO- '' | apt-key add -
# apt-get install apt-transport-https

Adding the repository for Debian jessie is done in the following way:

# echo 'deb jessie main' >> /etc/apt/sources.list.d/ait-qkd.list

If you like to try the develop branch then you can do this:

# echo 'deb jessie-testing main' >> /etc/apt/sources.list.d/ait-qkd.list

After these steps you can install the AIT QKD R10 with:

# apt-get update
# apt-get install qkd

…or for the develop (testing) branch:

# apt-get update
# apt-get -t jessie-testing install qkd


This comes also with a bonus: whenever there are updates, you can simply run

# apt-get update
# apt-get upgrade

…to get the newest version of AIT QKD R10 installed.