I’m quite new to Silverblue and Flatpaks. I was surprised when I installed that so many components were installed as Flatpaks that I would expect to be tied to the OS version.
For example, Fedora 38 is using GNOME 44. Flatpak apps like the Calendar and the Nautilus previewer (Sushi) are also currently version 44.
When Fedora 39 comes out, perhaps it will use GNOME 45. Upgrading to Feodra 39 will involve rpm-ostree and will happen when I choose to upgrade my system. With regular RPMs and DNF, the apps will get updated in sync when the repository changes. But what about these Flatpaks? Will they go to version 45 before I upgrade the system? Will that cause problems because of the earlier GNOME version?
By design, the Flatpaks are updated independently from the system. If you install the version from Flathub, you will get the latest version, independently of your distribution.
Flatpaks are based on a Platform which includes the libraries that they need. The remaining interfaces with the host system are the kernel, the sound server, the display server, etc. and those are not expected to break compatibility between releases.
I follow everything you said. Yes, the Flatpaks include any library dependencies and yes the kernel and various drivers remain stable. But I’m specifically wondering about the integrations between various components of GNOME.
Is GNOME committed to maintaining compatibility between, say, the Calendar application and the events integration in the notifications bar between releases? Right now they have a synchronized release and distributions would almost always update them simultaneously.
I’m likely worried about nothing - so far I have had no problems running the Flatpak for Nautilus Previewer at version 43.x and Nautilus on 44.x.
That concern is justified. Gnome developpers are not explicitly committed to maintain compatibility. An API may be changed in a newer version of Gnome Shell. Applications intented for that version then indeed may not interact properly in combination with an older version of Gnome Shell.
However, what is at play here is that the flatpak repositories providing the applications for Silverblue are those of Fedora. So it is the distribution that also controls the flatpaks. It can be expected that these will be kept in sync with the operating system by the distribution maintainers.