You don’t need
unattended-upgrades for this,
apt can take care of updates and downloads by itself. See
/usr/lib/apt/apt.systemd.daily for details (this is called either by a cron job, or by a systemd timer); you can configure the following, in a file in
APT::Periodic::Enable "1"; to enable the script;
APT::Periodic::Update-Package-Lists "1"; to run
apt-get update every day (0 disables, n > 1 runs it every n days);
APT::Periodic::Download-Upgradeable-Packages "1"; to run
apt-get upgrade --download-only every day (as above);
APT::Periodic::Verbose "1"; sends a progress report to root.
cron-apt is another tool which can do this, along with emails with command outputs; however for basic scenarios such as the above it doesn’t add anything to the features now available in
Both of these send emails with any output, not just when there are packages to upgrade. To get that behaviour, you could disable those emails (except on error), and supplement them with a cron job running
apt --list upgradable.
apticron is yet another tool which does this, but more closely fits your requirements: it sends email only when it determines that upgrades are available. It can also be configured to list only new upgrades (since the previous email), and it will use
apt-listchanges to include the changelogs.