List installed meta packages in APT

apt

Meta packages are packages that do not install anything by themselfs, but are dependent on other packages. How do I list the installed meta packages on my system?

Best Answer

I used:

apt-cache search . | grep -i "metapackage\|meta-package"

combined with:

dpkg --get-selections

in the following script:

awk 'BEGIN{
    FS=" - ";
    findmeta="apt-cache search . | grep -i \"metapackage\|meta-package\"";
    while ((findmeta | getline) > 0) meta[$1]=$2;
    FS=" ";
    findinstalled="dpkg --get-selections";
    while ((findinstalled | getline) > 0) {
        if ($1 in meta) print $1" - "meta[$1]
    }
}'

On one line:

awk 'BEGIN{FS=" - ";findmeta="apt-cache search . | grep -i \"metapackage\|meta-package\""; while ((findmeta | getline) > 0) meta[$1]=$2; FS=" "; findinstalled="dpkg --get-selections"; while ((findinstalled | getline) > 0) {if ($1 in meta) print $1" - "meta[$1]}}'

Example results:

emacs - GNU Emacs editor (metapackage)
exim4 - metapackage to ease Exim MTA (v4) installation
linux-headers-amd64 - Header files for Linux amd64 configuration (meta-package)
linux-image-amd64 - Linux for 64-bit PCs (meta-package)
xfce4 - Meta-package for the Xfce Lightweight Desktop Environment
xserver-xorg-input-all - X.Org X server -- input driver metapackage