If a package is available in an Ubuntu PPA but not in Debian, you can easily rebuild it and install it on Debian.

Here for instance, we're going to build a Debian package of the Pogo music player available in an Ubuntu PPA.

Is the package really missing in Debian ? The package might not be available in your Debian version, but it may be available in testing/unstable.

You can check this with the command rmadison. If you're interested in a package called vagrant, try if the command rmadison vagrant returns something like:

vagrant | 1.6.5+dfsg1-2 | sid          | source, all

If you see the the package is available in sid, it means you should instead do a SimpleBackportCreation of the vagrant package.

Now if rmadison does not return anything, you can build the PPA package in the following 5 easy steps.

Install the Debian SDK

sudo apt install devscripts build-essential software-properties-common

Add the PPA source url to your sources.list

We want to install the PPA of the stable pogo builds. From the page https://launchpad.net/~pogo-dev/+archive/ubuntu/stable we found the name of the ppa, which we add to our repositories with:

sudo add-apt-repository --enable-source ppa:pogo-dev/stable

This will create a new apt repository entry in /etc/apt/sources.list.d/pogo-dev-ubuntu-stable-disco.list and enable the deb-src entry.

Inside this file, we will disable the binary package repository (which might only work on ubuntu):

sudo sed -i 's/^deb /# deb /' /etc/apt/sources.list.d/pogo-dev-ubuntu-stable-disco.list

Replace in the repo list the 'disco' string with the latest Ubuntu LTS release (as of 2018, it is the 'bionic' beaver release)

sudo sed -i 's/disco/bionic/' /etc/apt/sources.list.d/pogo-dev-ubuntu-stable-disco.list

Now call apt-update and check that the repository update is successful.

sudo apt update
Hit:2 http://ppa.launchpad.net/pogo-dev/stable/ubuntu bionic InRelease

Install the package source and build the package

As normal user:

apt source --build pogo

Note: For this to work you need to uncomment the lines starting with *deb-src* in /etc/apt/sources.list, or you will get the error "E: You must put some 'source' URIs in your sources.list".

Install the resulting stuff

You have a package in the directory called something like pogo_1.0-0~708~ubuntu18.10.1_all.deb You can install it with

sudo dpkg --install pogo_1.0-0~708~ubuntu18.10.1_all.deb

Going further

If you find that the program you used would be of interest to other Debian users, check it if an "ITP:IntentToPackage" or a "RFP:RequestForPackage" bug report has been used. If no one has done this before, create a new bug report. For instance this the RFP for Pogo: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=666008

If you feel brave, have a look at what's inside the pogo-1.0.0/debian/ directory, and read IntroDebianPackaging