# How to install ArmNN via our APT repository on Ubuntu's Launchpad
* [Introduction](#introduction)
* [Add the Ubuntu Launchpad PPA to your system](#addRepo)
* [Outline of available packages](#availablePackages)
* [Install desired combination of packages](#InstallPackages)
* [Uninstall packages](#uninstallPackages)
#### Introduction
These are the step by step instructions on how to install the ArmNN core, TensorflowLite Parser as well as PyArmnn for x86_64, Arm64 and Armhf for Ubuntu 20.04.
The packages will also be added to Debian Bullseye, their progress can be tracked here: https://tracker.debian.org/pkg/armnn
#### Add the Ubuntu Launchpad PPA to your system
* Add the PPA to your sources using a command contained in software-properties-common package:
```
sudo apt install software-properties-common
sudo add-apt-repository ppa:armnn/ppa
sudo apt update
```
* More information about our PPA and the Ubuntu Launchpad service can be found at [launchpad.net](https://launchpad.net/~armnn/+archive/ubuntu/ppa)
#### Outline of available packages
We provide a number of packages for each architecture; x86_64, aarch64 and armhf:
##### x86_64
* Runtime Packages
```
libarmnn-cpuref-backend22_20.08-4_amd64.deb
libarmnn-tfliteparser22_20.08-4_amd64.deb
libarmnn22_20.08-4_amd64.deb
python3-pyarmnn_20.08-4_amd64.deb
```
* Development Packages
```
libarmnn-dev_20.08-4_amd64.deb
libarmnn-tfliteparser-dev_20.08-4_amd64.deb
```
##### arm64
* Runtime Packages
```
libarmnn-aclcommon22_20.08-4_arm64.deb
libarmnn-cpuacc-backend22_20.08-4_arm64.deb
libarmnn-cpuref-backend22_20.08-4_arm64.deb
libarmnn-gpuacc-backend22_20.08-4_arm64.deb
libarmnn-tfliteparser22_20.08-4_arm64.deb
libarmnn22_20.08-4_arm64.deb
python3-pyarmnn_20.08-4_arm64.deb
```
* Development Packages
```
libarmnn-dev_20.08-4_arm64.deb
libarmnn-tfliteparser-dev_20.08-4_arm64.deb
```
##### armhf
* Runtime Packages
```
libarmnn-aclcommon22_20.08-4_armhf.deb
libarmnn-cpuacc-backend22_20.08-4_armhf.deb
libarmnn-cpuref-backend22_20.08-4_armhf.deb
libarmnn-gpuacc-backend22_20.08-4_armhf.deb
libarmnn-tfliteparser22_20.08-4_armhf.deb
libarmnn22_20.08-4_armhf.deb
python3-pyarmnn_20.08-4_armhf.deb
```
* Development Packages
```
libarmnn-dev_20.08-4_armhf.deb
libarmnn-tfliteparser-dev_20.08-4_armhf.deb
```
#### Install desired combination of packages
The easiest way to install all of the available packages for your systems architecture is to run the command:
(Please Note: libarmnn-cpuacc-backend has been built with NEON support, installing this backend on an armhf device not supporting NEON may cause a crash/undefined behaviour.)
```
sudo apt-get install -y python3-pyarmnn libarmnn-cpuacc-backend22 libarmnn-gpuacc-backend22 libarmnn-cpuref-backend22
# Verify installation via python:
python3 -c "import pyarmnn as ann;print(ann.GetVersion())"
# Returns '22.0.0'
```
This will install PyArmnn and the three backends for Neon, Compute Library and our Reference Backend.
It will also install their dependencies including the arm-compute-library package along with the Tensorflow Lite Parser and it's dependency ArmNN Core.
If the user does not wish to use PyArmnn they can go up a level of dependencies and instead just install the Tensorflow Lite Parser:
```
sudo apt-get install -y libarmnn-tfliteparser22 libarmnn-gpuacc-backend22
```
#### Uninstall packages
The easiest way to uninstall all of the previously installed packages is to run the command:
```
sudo apt autoremove -y libarmnn22
```