Question re apt vs apt-get

Quick history: Ubuntu GNOME 16.04. motd was saying I had upgrades, but apt-get update && upgrade wasn't upgrading anything. It did, however, mention a number of things that were held back (if I manually held back these packages then I have no memory of it). I tried the same with apt instead of apt-get, and it seems to have installed all of the held back packages (motd now says 0 updates available)

So, I have two questions.

  1. Why did apt not honour the hold that apt-get was apparently honouring?

  2. Assuming I'm correct that I didn't manually put on the hold, why would these have been held back? I've noticed that I have some occasional screen corruption in chrome since the upgrade, although I'm not positive it's connected.

This is what was upgraded/installed

    Install: gir1.2-gfbgraph-0.2:amd64 (0.2.3-1, automatic), gir1.2-gtkchamplain-0.12:amd64 (0.12.13-1, automatic), gnome-maps:amd64 (3.18.4-0ubuntu1, automatic), ubuntu-core-launcher:amd64 (2.21, automatic), gir1.2-champlain-0.12:amd64 (0.12.13-1, automatic), snapd-login-service:amd64 (1.2-0ubuntu1.1~xenial, automatic), libsnapd-glib1:amd64 (1.2-0ubuntu1.1~xenial, automatic)
    Upgrade: snapd:amd64 (2.17.1ubuntu1, 2.21), gnome-software:amd64 (3.20.1+git20160923.2.7374bdc-0ubuntu1~xenial1, 3.20.1+git20161013.0.d77d6cf-0ubuntu2~xenial1), ubuntu-software:amd64 (3.20.1+git20160923.2.7374bdc-0ubuntu1~xenial1, 3.20.1+git20161013.0.d77d6cf-0ubuntu2~xenial1), ubuntu-gnome-desktop:amd64 (0.58.1, 0.58.2), gnome-software-common:amd64 (3.20.1+git20160923.2.7374bdc-0ubuntu1~xenial1, 3.20.1+git20161013.0.d77d6cf-0ubuntu2~xenial1)
    End-Date: 2017-02-03  15:21:48

Posted Feb 4, 2017, 1:54 AM UTC

12
chibinchobin•

There are a number of reasons why packages might be held back. In your case, it was likely that one or more of the packages you upgraded had a new dependency that the previous version did not. apt-get upgrade will not automatically install these new dependencies (though it can be instructed to do so with apt-get upgrade --with-new-pkgs), whereas apt upgrade will install the new dependencies.

2
krankerOP•

Thanks, I think that explains everything.

I had assumed that kept back packages were specifically kept back rather than kept back automatically. This assumption was incorrect.

I guess the only thing I'd change/complain about is that apt-get could have mentioned it. For instance, it mentions that I should run apt-get autoremove to remove unused headers, but didn't mention that I should run the command you suggested to update packages with new dependencies, even though one of them was a security update (and therefore considerably more important than deleting unused headers).

1