GNOME Bugzilla – Bug 763619
GNOME Platform Should Support An Entirely Stateless Configuration
Last modified: 2020-11-24 10:15:46 UTC
This is a tracking bug for various stateless-implementation bugs that are being filed with the GNOME platform. In a stateless operating system, the /usr tree is considered to be the domain of the vendor, i.e. the OS files themselves. Files in /etc/ and /var, i.e. mutable nodes in the filesystem, are considered to be owned exclusively by the local system administrator (i.e. unix account euid 0) In order to keep these split-domains, vendor-provided files must then not violate this specification, and must instead provide files in the /usr tree (This is under the assumption of course that the Operating System no longer has a split /usr / tree.) Currently, many part of the GNOME Platform rely on, and/or ship configuration files or assets outside of the vendor-domain (/usr) and in the local system administrator's domain (/etc/, /var/, etc) A proposal has been made to modify the XDG specification to support such a stateless configuration: https://lists.freedesktop.org/archives/xdg/2016-March/013687.html Should that be accepted, the most obvious change to immediately affect GNOME components would be deprecating the use of $(sysconfdir)/xdg/autostart in favour of $(datadir)/xdg/autostart in shipped files. For a larger discussion on this topic, please see: https://clearlinux.org/features/stateless This has already been implemented in the Clear Linux Project for Intel Architecture, and as such converging on a standard now that the work has been shown to work and be beneficial, would help all parties moving forward into a more stateless era.
Just to capture some context for interested parties, as right now this bug is about dealing with the low-hanging fruit first: [14:15:05] <ikey> Stateless has to be a catch-all to include all the cases [14:15:20] <ikey> But if you look at the immediate goal of not-shipping-files-in-places-we-shouldnt-own ... [14:15:24] <ikey> Then it makes sense [14:16:00] <ikey> Once that's done you can actually think about, do I even need these configuration files to run .. Can I run completely /without/ state? Can I have sensible behaviour just baked in by default? [14:16:04] <ikey> At that point its completely stateless [14:16:09] <ikey> But gotta start somewhere :) [14:16:35] <ikey> And the placement on the filesystem certainly counts as low-hanging-fruit in all that [14:17:01] <ikey> After we can look at not abusing the filesystem at all, and think of /usr/ as being immutable by default (even if it isnt)
bugzilla.gnome.org is being replaced by gitlab.gnome.org. We are closing all older tickets in GNOME Bugzilla. If this is still a valid request in a recent and currently supported version of GNOME, then please feel free to use https://gitlab.gnome.org/groups/GNOME/-/issues and/or (if this ticket is about a general Initiative) check the `9. Initiative` labels on https://gitlab.gnome.org/groups/GNOME/-/labels if they should be applied on codebase-specific tickets in GitLab. Thanks.