I have been taking a look at snapd’s code, and if I understand it correctly we are safe from regressions as far as refresh.metered
is not set to hold
by default.
But, there is an issue with the current logic: it considers that all network devices are managed by network-manager
. When the network-manager
snap is installed, it does not manage ethernet connections by default. You need to set the ethernet.enable
property to true
for this to happen. If it is not set, in a case when you have a modem and an ethernet connection both active, NM will very possibly report org.freedesktop.NetworkManager.Metered
is NM_METERED_GUESS_YES
, but actually the default route is through the ethernet (which would be managed by systemd-netwrokd
). This would cause the system to not update for 60 days when it should.
In most of our IoT devices, ethernet.enable
has been set to true
, but it is false
if you install manually the snap.