PPAs (Personal Package Archives) are personal repositories for various packages built and hosted on Launchpad. As much as PPAs help developers, they help users also. A software is not available in the default repositories? No problem! Add the PPA and install it. Dead simple.
Still, managing PPAs can be sometimes difficult since there is no GUI for it. Well, it is not that difficult to manage PPAs from command line, but still a GUI is always more convenient. This is where Y PPA Manager comes into act. It is a nice little tool by Alin Andrei written in bash. The GUI is done in YAD (a zenity fork), so don’t expect a highly polished and beautiful interface. But the interface is simple enough and quite easy to use. And did I mention that it supports Linux Mint too?
According to the launchpad page the features of Y PPA Manager are,
Y PPA Manager features
- Add PPA
- Remove PPA
- Purge PPA
- Search for packages in Launchpad PPAs: a regular search which is faster, but doesn’t display exact package matches and comes with less details and a deep search which displays exact package matches. In the search, you can also see if a PPA is already added on your system or not and if a package is already installed (and the installed version). You can perform the following actions on a PPA listed in the search results: add it, list packages in the PPA, open PPA in browser, download packages, install a package using the built-in installer (if the PPA is not already added, it will be added)
- Update single PPAs – without running a full “apt-get update”, which should be a lot faster (and especially useful for computers with slow Internet connections)
- List packages in PPAs enabled on your computer
- Edit PPA source file
- Remove duplicate PPAs
- Import all missing GPG keys
- Fix GPG BADSIG errors
- Backup an restore PPAs (automatically imports missing GPG keys)
- Re-enable working PPAs after Ubuntu upgrade: when you upgrade to a newer Ubuntu release, the PPAs are disabled so using this feature, the PPAs that work with the new Ubuntu version you’re using are re-enabled, leaving the others disabled
- Update release name in working PPAs: somewhat similar to the feature above, this one is useful if you’ve backup up the PPAs in say Ubuntu Precise and restored them in Ubuntu Quantal (just an example) – in this case, using this feature you can replace “precise” in each PPA source with “quantal”, but only for the PPAs that have packages for Quantal.
- Desktop integration: notifications, Unity quicklists, indicator and HUD support
- PPA Purge behavior: auto – don’t require any user input; manual – opens a terminal window asking the user how to solve the issue (this is the default and highly recommended behavior).
- Ubuntu version: this only affects the search. So if you want the Y PPA Manager search to display packages for some other Ubuntu version, simply change the Ubuntu version here. Supported versions: karmic, lucid, maverick or natty (use the Ubuntu version names for Linux Mint too!).
Now, let’s see how well it works.
Upon starting the utility, you’ll be asked for password, which is obvious, since managing PPAs require root permissions.
The main UI lists different options,
- Add a PPA
- Manage PPAs
- Search in all launchpad PPAs
- Install packages
The “Add a PPA” dialog is simple enough. You just need to enter a ppa name, e.g-
ppa:gnome3-team/gnome3 and click “Ok”. Y PPA Manager adds the PPA and updates the sources list for the specific PPA.
The Manage PPAs dialog is where most of the options are. All the PPAs present on your system are listed here. You do the following operations on a PPA,
- Remove – Removes the PPA from the system. The installed packages are still there.
- Purge – Removes the PPA from the system and downgrades or removes the installed packages which were installed from the PPA.
- Update – Updates the package lists for the PPA.
- Edit source – Opens the source file for editing.
- List packages – Lists the packages available in the PPA.
You also search in launchpad PPAs right through the GUI. You can add the PPA or list it’s packages from the search result.
The “Advanced” dialog lists some very useful options and can fix many problems. They are,
- Scan and remove duplicate PPAs
- Import missing GPG keys
- Fix GPG BADSIG errors
- Backup and restore repositories
- Update release names in working PPAs
The “Settings” dialog let’s you configure the ppa-purge behavior, control ubuntu indicator properties and set the codename.
Besides the above GUI features, Y PPA Manager also includes some command line tools written by other developers, like ppa-purge, launchpad-getkeys, update-ppa etc. which it uses to perform various tasks.
ppa-purge is a useful utilty which can of automatically downgrade all packages in a given PPA back to the respective versions available in the default Ubuntu repositories.
sudo ppa-purge ppa:gnome3team/gnome3
launchpad-getkeys is a script which automatically imports all missing GPG keys. Especially useful when a key was not added when adding a PPA while the server is down or likes. You can just run it as follows to fix the problems,
You can also specify a keyserver and port using the “-k” parameter.
sudo launchpad-getkeys -k SERVER:PORT
update-ppa is a script to selectively update package lists apt repositories.
update-ppa http://archive.ubuntu.com/ubuntu quantal main
It can also read repositories from files.
update-ppa -r /etc/apt/sources.list.d/gnome3-team-gnome3-quantal.list
So that was it. I find it a really convenient as useful tool to manage PPAs. What do you think?