Occasionally I want to install packages located at an Ubuntu PPA repository on my Debian stretch machine. There’s a bit of a trick to it, thanks to chrisjean.com for outlining what needs to be done.
Step 1 is the same as in Ubuntu, add the PPA with add-apt-repository (install if it’s not already there)
sudo add-apt-repository ppa:<contributor>/<ppa name>
This will appear to work but when you do an apt update you may get something similar to this
W: GPG error: http://ppa.launchpad.net/jonathonf/gcc-7.1/ubuntu xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 8CF63AD3F06FC659
W: The repository 'http://ppa.launchpad.net/jonathonf/gcc-7.1/ubuntu xenial InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
The last step is to manually import the key with the following command:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <KEY_OF_PPA>
The PPA key will be listed on the PPA’s page. Once I ran that second command everything worked swimmingly.
When trying to update crouton I kept getting the following error message:
Preparing to unpack .../linux-image-3.8.11_20150314_amd64.deb ...
Ok, aborting, since modules for this image already exist.
dpkg: error processing archive /var/cache/apt/archives/linux-image-3.8.11_20150314_amd64.deb (--unpack):
After some digging I found this thread which explains how to fix it. The source of the problem was the fact that I had installed a modified kernel to allow VirtualBox to work properly. The way to update crouton is to remove the repository for that kernel
After removing that repository the update completed successfully.
I wanted to completely blow away owncloud on one of my Debian servers today. I did apt-get remove owncloud and removed the owncloud directory. That should be all I need to do, right? Alas, not so.
It turns out that a simple apt-get remove does not remove necessary files, and a simple apt-get install doesn’t restore those missing files. In order to completely blow away the package, you must use the purge command (thanks to this site for the inspiration.)
First, purge the package as well as related packages
sudo apt-get purge owncloud-*
Then, re-install the package with the –reinstall flag
sudo apt-get install --reinstall owncloud
Done! The package has come back anew with all necessary files.