RetroArch is the reference frontend for the libretro API. Popular examples of implementations for this API includes videogame system emulators and game engines, but also more generalized 3D programs. These programs are instantiated as dynamic libraries. We refer to these as "libretro cores".
libretro is an API that exposes generic audio/video/input callbacks. A frontend for libretro (such as RetroArch) handles video output, audio output, input and application lifecycle. A libretro core written in portable C or C++ can run seamlessly on many platforms with very little/no porting effort.
While RetroArch is the reference frontend for libretro, several other projects have used the libretro interface to include support for emulators and/or game engines. libretro is completely open and free for anyone to use.
To install, open a terminal and paste next commands:
apt-key add - < Release.key
echo 'deb http://download.opensuse.org/repositories/home:/Sunderland93:/RetroArch/Debian_8.0/ /' >> /etc/apt/sources.list.d/retroarch.list
apt-get update && apt install retroarch libretro-*