Is auto-refresh reliable ?

Dear forum readers,

I’m back on my system after not using it for around two months. After a few days using it, I had the idea to check the version of my Firefox Snap… and discovered it’s still a two month-old version, with absolutely nothing telling me that my version is outdated.

I checked the Snap system options, and no refresh parameter is set, including refresh.timer, i.e. default behaviour applies. And indeed, I can see the following in the logs regularly, every 6 hours or so it seems :

snapd[995]: storehelpers.go:923: cannot refresh: snap has no updates available: "acrordrdc", "bare", "caprice32", "cncra", "cnctsun", "core", "core18", "core20", "core22", "firefox", "firmware-updater", "gnome-3-28-1804", "gnome-3-38-2004", "gnome-42-2204", "gtk-common-themes", "hunspell-dictionaries-1-7-2004", "kde-frameworks-5-96-qt-5-15-5-core20", "snap-store", "snapd", "snapd-desktop-integration", "wine-platform-5-stable", "wine-platform-6-stable", "wine-platform-runtime"

(which is the complete list of snaps installed on my system)

Apart from Firefox, I noticed that some other snaps remain outdated despite not being on hold (I have no snaps on hold), and some have been refreshed recently. I should add that I’ve been careful to not use Firefox for time ample enough that auto-refresh supposedly kicks in in the meantime and isn’t blocked by a running snap… to no avail, obviously.

I suppose explicitly running a snap refresh would set things right, though I’m not 100% sure, but it made me realise that in times past, I may already have happily used outdated software for god knows how long, and I’m curious to see how long it will last, unless someone can explain what’s going on.

So, what’s going on ?

$ snap info firefox
name:      firefox
summary:   Mozilla Firefox web browser
publisher: Mozilla✓
store-url: https://snapcraft.io/firefox
contact:   https://support.mozilla.org/kb/file-bug-report-or-feature-request-mozilla
license:   unset
description: |
  Firefox is a powerful, extensible web browser with support for modern web application
  technologies.
commands:
  - firefox
  - firefox.geckodriver
snap-id:      3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
tracking:     latest/stable/ubuntu-23.10
refresh-date: 2024-02-20
channels:
  latest/stable:    125.0.2-1     2024-04-22 (4173) 282MB -
  latest/candidate: 125.0.2-1     2024-04-19 (4173) 282MB -
  latest/beta:      126.0b6-1     2024-04-26 (4204) 285MB -
  latest/edge:      127.0a1       2024-04-27 (4207) 303MB -
  esr/stable:       115.10.0esr-1 2024-04-16 (4126) 256MB -
  esr/candidate:    115.10.0esr-1 2024-04-11 (4126) 256MB -
  esr/beta:         ↑                                     
  esr/edge:         ↑                                     
installed:          123.0-3                  (3836) 279MB -

Currently running Ubuntu 23.10, up to date apt-wise.

In my ubuntu os auto refresh works well. Can you run snap list and snap refresh --list and show the results?

How do you determine that in the long run ? Because in the past I would have sweared the same…

Anyway here it is !

$ snap list
Nom                                   Version                     Révision  Suivi            Éditeur      Notes
acrordrdc                             2021.007.20091              62        latest/stable    mmtrt        -
bare                                  1.0                         5         latest/stable    canonical✓   base
caprice32                             4.6.0                       2         latest/stable    stanmichals  -
cncra                                 1.0                         76        latest/stable    mmtrt        -
cnctsun                               1.0                         75        latest/stable    mmtrt        -
core                                  16-2.61.2                   16928     latest/stable    canonical✓   core
core18                                20240416                    2823      latest/stable    canonical✓   base
core20                                20240111                    2182      latest/stable    canonical✓   base
core22                                20240408                    1380      latest/stable    canonical✓   base
firefox                               123.0-3                     3836      latest/stable/…  mozilla✓     -
firmware-updater                      0+git.5007558               127       latest/stable/…  canonical✓   -
gnome-3-28-1804                       3.28.0-19-g98f9e67.98f9e67  198       latest/stable    canonical✓   -
gnome-3-38-2004                       0+git.efb213a               143       latest/stable    canonical✓   -
gnome-42-2204                         0+git.ff35a85               141       latest/stable    canonical✓   -
gtk-common-themes                     0.1-81-g442e511             1535      latest/stable/…  canonical✓   -
hunspell-dictionaries-1-7-2004        1.7-20.04+pkg-6fd6          2         latest/stable    brlin        -
kde-frameworks-5-96-qt-5-15-5-core20  5.96.0                      7         latest/stable    kde✓         -
snap-store                            0+git.7530b8d               1106      latest/stable/…  canonical✓   -
snapd                                 2.62                        21465     latest/stable    canonical✓   snapd
snapd-desktop-integration             0.9                         83        latest/stable/…  canonical✓   -
wine-platform-5-stable                5.0.3                       18        latest/stable    mmtrt        -
wine-platform-6-stable                6.0.4                       19        latest/stable    mmtrt        -
wine-platform-runtime                 v1.0                        367       latest/stable    mmtrt        -
$ snap refresh --list
Name                       Version        Rev   Size   Publisher   Notes
core20                     20240227       2264  67MB   canonical✓  base
firefox                    125.0.2-1      4173  282MB  mozilla✓    -
gnome-42-2204              0+git.510a601  176   529MB  canonical✓  -
snap-store                 0+git.97116aa  1134  10MB   canonical✓  -
snapd-desktop-integration  0.9            157   487kB  canonical✓  -

And let me add this as well :

# snap get -d system
{
	"refresh": {},
	"seed": {
		"loaded": true
	},
	"system": {
		"hostname": "NovHak-PL",
		"network": {},
		"timezone": "UTC"
	}
}

My main browser is snap chromium, i often got a pop up message tell me need to close the browser for update. And i usally do, after a while, it will again pop a message tell that update is completed.

Another way i always use is snap changes to see if any change has made. It will show some results like 28 Done yesterday at 20:37 UTC yesterday at 20:37 UTC Auto-refresh snap “snap-store”

I see your firefox is tracking a weird channel, latest/stable/ubuntu-23.10 Maybe you can try sudo snap switch --channel=stable firefox let is track the latest/stable channel, then wait for a while.

I remember having such popups too, but not in the last few days.

The firmware-updater snap is set that way too, and has been updated recently nevertheless. It probably means ubuntu-23.10 is a “subchannel” and when absent the snap system uses the parent channel, that way it remains possible to set a snap to a version that’s specific to 23.10 if need be, by explicitly creating that subchannel… or maybe it’s a way for the snap integrators to have statistics about which OS version is refreshing what. Anyway, despite not being listed in the channels list indeed, I don’t think it’s a mistake.

$ snap changes
ID   Status  Spawn                Ready                Summary
225  Done    today at 04:18 CEST  today at 04:19 CEST  Actualiser automatiquement les paquets Snap "core18", "core22"

I see the core22 snap (on which firefox depends) has been updated recently, maybe that’s a step before updating the browser… but still, why wait several days before updating ? I’m still looking for a reason. Maybe I’ll leave the system running the whole night (with Firefox closed), to see if it changes anything.

Finally, the Firefox snap has been auto-refreshed last night (125.0.2-1), but it turns out 125.0.3-1 has just been made available. Anyway… A few snaps still remain that have still not been auto-refreshed for a long time : core20, gnome-42-2204, snap-store and snapd-desktop-integration, sometimes even as far as back in 2023.

One reason I see behind this, is that auto-refreshes are phased to save server bandwidth, but doesn’t it go too far ? It’s nice to provide a confined environment security-wise, but if that’s at the price of keeping outdated software, I’m not sure the result ends up being positive.

With regards to firefox not refreshing, you’re probably hitting this bug:

It was supposedly fixed in snapd 2.61 but I still had multiple systems (including fresh installs) that I could only update manually. Since the recent version 2.62 the situation may have improved as I’ve received one prompt that a firefox update was available.

This problem seems to only affect a subset of users (perhaps there is a region-specific component to it). Hopefully it is finally properly fixed with snapd 2.62 because critical browser security fixes can go unpatched for long times without doing manual firefox snap updates, as you’ve experienced.

I was observing how auto-refresh works on my system and unfortunately I also can say it is unreliable.

For example I opened the App Center and there were 4 snaps listed for update. Chromium, Firefox, snapd and snapd-desktop-integration I waited for the auto-refresh to kick in to check how will it work. The first window upgraded musicpod, then in the second update window miracle-wm. Finally in the third auto-refresh two of those snaps were updated (snapd and snapd-desktop-integration).

I didn’t run Chromium or Firefox in that time because neither of those are my main Web browser. There were two more auto-refresh sessions and still those two snaps haven’t been updated.

Also I’m using snapd from the edge channel.

snap version 
snap    2.63+git132.g9e7fed9
snapd   2.63+git132.g9e7fed9
series  16
ubuntu  24.04
kernel  6.8.8-x64v3-xanmod1

Today another auto-refresh and still Firefox and Chromium haven’t been updated.

I’ve had in the past, and still have (from time to time), problems with firefox. For example now, I’m still on version 124. Out of curiosity I wont be manually refreshing, and wait a little more. But previous situation did not fix itself, so I’m afraid that I am again experiencing the problem when if it goes wrong, it stays wrong

$ snap refresh --list
Name                     Version         Rev   Size   Publisher   Notes
chromium                 124.0.6367.118  2842  169MB  canonical✓  -
code                     b58957e6        158   326MB  vscode✓     classic
firefox                  125.0.3-1       4209  282MB  mozilla✓    -
intellij-idea-community  2024.1.1        498   896MB  jetbrains✓  classic

$ snap info firefox
name:      firefox
summary:   Mozilla Firefox web browser
publisher: Mozilla✓
store-url: https://snapcraft.io/firefox
contact:   https://support.mozilla.org/kb/file-bug-report-or-feature-request-mozilla
license:   unset
description: |
  Firefox is a powerful, extensible web browser with support for modern web application
  technologies.
commands:
  - firefox
  - firefox.geckodriver
snap-id:      3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
tracking:     latest/stable
refresh-date: 20 days ago, at 00:15 CEST
channels:
  latest/stable:    125.0.3-1     2024-04-29 (4209) 282MB -
  latest/candidate: 125.0.3-1     2024-04-27 (4209) 282MB -
  latest/beta:      126.0b8-1     2024-05-01 (4225) 284MB -
  latest/edge:      127.0a1       2024-05-03 (4232) 301MB -
  esr/stable:       115.10.0esr-1 2024-04-16 (4126) 256MB -
  esr/candidate:    115.10.0esr-1 2024-04-11 (4126) 256MB -
  esr/beta:         ↑                                     
  esr/edge:         ↑                                     
installed:          124.0.2-1                (4090) 281MB

$ uptime
 14:11:41 up 13 days,  2:21,  1 user,  load average: 2,18, 1,86, 1,74

$ snap changes
ID   Status  Spawn                      Ready                      Summary
498  Done    2 days ago, at 01:25 CEST  2 days ago, at 01:26 CEST  Auto-refresh snap "cups"
499  Done    2 days ago, at 11:19 CEST  2 days ago, at 11:19 CEST  Install "beekeeper-studio" snap from "latest/stable" channel
500  Done    2 days ago, at 12:05 CEST  2 days ago, at 12:06 CEST  Auto-refresh snaps "chromium", "core18"

$ snap version
snap    2.62
snapd   2.62
series  16
ubuntu  22.04
kernel  6.5.0-28-generic

Couple auto-refreshes more and still Firefox and Chromium haven’t been updated.

Also I’m on the beta channel of Firefox and in that time there were three releases (126.0b7, 126.0b8 and 126.0b9).

I did manual refresh, and now I will check if the problem with auto-refreshing stops, or keeps happening.

$ snap info firefox
name:      firefox
summary:   Mozilla Firefox web browser
publisher: Mozilla✓
store-url: https://snapcraft.io/firefox
contact:   https://support.mozilla.org/kb/file-bug-report-or-feature-request-mozilla
license:   unset
description: |
  Firefox is a powerful, extensible web browser with support for modern web application
  technologies.
commands:
  - firefox
  - firefox.geckodriver
snap-id:      3wdHCAVyZEmYsCMFDE9qt92UV8rC8Wdk
tracking:     latest/stable
refresh-date: 22 days ago, at 00:15 CEST
channels:
  latest/stable:    125.0.3-1     2024-04-29 (4209) 282MB -
  latest/candidate: 125.0.3-1     2024-04-27 (4209) 282MB -
  latest/beta:      126.0b9-1     2024-05-03 (4234) 284MB -
  latest/edge:      127.0a1       2024-05-05 (4238) 301MB -
  esr/stable:       115.10.0esr-1 2024-04-16 (4126) 256MB -
  esr/candidate:    115.10.0esr-1 2024-04-11 (4126) 256MB -
  esr/beta:         ↑                                     
  esr/edge:         ↑                                     
installed:          124.0.2-1                (4090) 281MB -
$ snap changes
ID   Status  Spawn                      Ready                      Summary
498  Done    4 days ago, at 01:25 CEST  4 days ago, at 01:26 CEST  Auto-refresh snap "cups"
499  Done    4 days ago, at 11:19 CEST  4 days ago, at 11:19 CEST  Install "beekeeper-studio" snap from "latest/stable" channel
500  Done    4 days ago, at 12:05 CEST  4 days ago, at 12:06 CEST  Auto-refresh snaps "chromium", "core18"
501  Done    2 days ago, at 22:45 CEST  2 days ago, at 22:45 CEST  Auto-refresh snap "btop"
$ snap refresh --list
Name                     Version         Rev   Size   Publisher   Notes
chromium                 124.0.6367.118  2842  169MB  canonical✓  -
code                     b58957e6        158   326MB  vscode✓     classic
firefox                  125.0.3-1       4209  282MB  mozilla✓    -
intellij-idea-community  2024.1.1        498   896MB  jetbrains✓  classic

syslog:

May  4 22:01:11 pc snapd[2412]: storehelpers.go:923: cannot refresh:
May  4 22:01:11 pc snapd[2412]: snap has no updates available: "bare", "beekeeper-studio", "bitwarden", "btop", "canonical-livepatch", "chromium", "core", "core18", "core20", "core22", "cups", "deja-dup", "firefox", "flameshot", "freecad", "gimp", "gnome-3-28-1804", "gnome-3-38-2004", "gnome-42-2204", "gnome-boxes", "gtk-common-themes", "gtk2-common-themes", "intellij-idea-community", "kde-frameworks-5-96-qt-5-15-5-core20", "kde-frameworks-5-99-qt-5-15-7-core20", "kdenlive", "kf5-5-108-qt-5-15-10-core22", "kf5-5-110-qt-5-15-11-core22", "kf5-5-111-qt-5-15-11-core22", "mesa-core22", "mqtt-explorer", "mumble", "netbeans", "nvim", "onlyoffice-desktopeditors", "rpi-imager", "scrcpy", "snap-store", "snapd", "snapd-desktop-integration", "stellarium-daily", "sublime-text", "superproductivity", "thunderbird"

As of now, my Firefox version is still 125.0.2-1, and hasn’t been updated since last time I posted (almost a week ago) when 125.0.3-1 was already available. Other snaps have been updated too, but after a fair amount of time as well… Afaic, firefox and snap-store are still missing updates.

So imho, the problem isn’t limited to Firefox. The fact that it’s a program that remains open for long periods of time can explain its updates being blocked more often than others, but then why no notifications about it ? Auto-refreshes are supposed to happen four times a day, but in terms of real auto-refreshes, is that even once a week ? As for the cause, the true figure remains shrouded in mystery, which I find rather unsettling for a problem that has been lurking for so long, and even more since we’re speaking of updates, possibly security ones, in a packaging system.

I guess it’s too late for Noble, which is likely to remain frozen in that disease, but maybe it should be considered to temporarily revert to traditional distro packaging that works in 24.10, at least for the more security-critical components such as web browsers, until that mess gets sorted out ?

1 Like

The problem returned.

Again auto-refresh doesn’t want to update Firefox, but also snap-store and snapd.

The snapd snap have been updated yesterday, but Firefox and snap-store are still stuck.

Also snap auto-refresh decided that Chromium will join the party of old snaps.

Yeah, FF is still at 125.0.2-1 for me. I’m considering switching to the tarball… at least it says when it’s time to get a new one.

The problem with auto-refresh not working as it supposed to is quite recent in my case.

I don’t recall snaps not being updated for several days without any reason. Firefox, Chromium and snap-store all of those were updating without problems. Something must triggered this issue, but I don’t know what.

I have been using the App Center to update snaps and the command line recently. Before I didn’t use either of those and just had the auto-refresh do the thing. Also I’m periodically using a script to remove old snaps (the previous revisions).

My firefox is still on version 124. But snap refresh --time looksweird: “next” refresh is a past date. My snaps are not updating - #8 by mrk

it seems like I, just like @Recydywa , fell into some weird system state when auto refresh is not working (reliably). I would like to provide more info but no one seems to be interested, and I do not know what more info to provide

I have to trust you on this, because I used to be blindly confident that refreshes were done in time, until recently.

My theory to explain the problem is that there’s a mechanism to save bandwidth on the servers, because well, snaps are biiig, but that makes people that don’t manually refresh wait for much too long. That or something else, but on the server side. They know about it, but they don’t want to change it for some reason, hence their silence. I’ve already argued with a Canonical developer once, who wanted to do something despite opposition “because reasons”, maybe it’s the same guy, who knows.

That’s weird indeed. You made me check that instantly, but it looks good on my side :

$ snap refresh --time
timer: 00:00~24:00/4
last: today at 18:52 CEST
next: tomorrow at 02:55 CEST