Ubuntu comes with a default set of packages installed and the package manager track those packages. If you remove a package that is installed by default, it becomes marked as "deselected". This means it was installed previously, but has been removed. In fact any package that you install and then remove becomes marked as "deselected".
This is useful for example to replicate the same packages you have on another machine or after a clean install. You can generate a list of "selected" and "deselected" packages on your system using the package manager and then load this list on another machine, which will make the package manager on it to install all "selected" and uninstall the ones marked as "deselected".
To replicate your packages selection on another machine (or restore it if re-installing), you can run this:
dpkg --get-selections > ~/my-packages
Then move the file "my-packages" to the other machine, and there run:
sudo dpkg --set-selections < my-packages && sudo apt-get dselect-upgrade
When you run the command above, all packages that were marked as "selected" will be installed in a batch and all packages marked as "deselected" will be removed, if present. This is a very handy feature.
NG stands for "Next Generation".
In the context of software, "generation" is the successor of the previous version. I've seen it being used with forked software, either because someone decides that the original work had a messy codebase or if the original maintainer does not want to continue development on a software project under the current name.
I haven't seen authors renaming their projects to *-ng
as they would rather increment their project's version number.
Examples of *-ng
applications with their history:
util-linux-ng
- A fork, util-linux-ng—with ng meaning "next generation"—was created when development stalled
aircrack-ng
- Aircrack-ng is a fork of the original Aircrack project.
Best Answer
You can see why a particular package is considered a bad quality by looking at the details provided in that dialog box. It usually has to deal with how a package is packaged and not the package itself.
If the package doesn't meet the Debian policy, then it is considered to be of a poor quality.
Some common issues that trigger this warning are: