I switched from Ubuntu to Debian so that I don’t need to update the code name every time a new release comes out. With the help of Unattended-upgrade (u-u), I can keep the system up to date with too much manual intervention.
¶Package Sources & Preference
Since it contains both
testing releases, it’s better to prefer packages in
testing when a package
exist in both releases, which can be achieved easily with a larger priority score for
testing release. Note that we
are using priority 50 for packages from unstable release, which ensures that packages from
unstable release will not
be upgraded via
apt upgrade or commands alike. Installing/upgrading packages is usually rather safe, but mixing
packages from different releases is like cruising in the uncharted territory, which shouldn’t be taken lightly.
Therefore, I disable (semi) auto upgrading for packages from
unstable. One can go for manual upgrading using
apt install <package_name>/sid.
Occasionally, we might want to know what packages are installed from one specific release, e.g.
apt-show-versions | grep unstable
As for staying updated, u-u has been working quite alright mostly with the following configs. However, when it does not,
sudo apt dist-upgrade, which seems to get me out of trouble.
List apt-related timers:
$ systemctl list-timers | grep apt
apt-daily.timer decides when to download upgradeable packages, and
apt-daily-upgrade.timer decides when to perform
upgrade/cleanup. Since my network connection is rather slow, I prefer downloading happens during night, so I override
$ sudo systemctl edit apt-daily.timer
Then, we can confirm that our new config works fine with
systemctl status apt-daily.timer
, the next trigger is around 3:00` next day.