Re: Proposal: Move to an annual platform release starting at F30

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 28, 2018 at 3:07 AM Brian (bex) Exelbierd
<bexelbie@xxxxxxxxxx> wrote:

> I think that Fedora's role as an innovater in the OS space means we
> should be aggressively exploring this.  Rolling Releases, Tech-Driven
> Releases and Time-Based Releases all have well known positives and
> negatives.  All of the work that has been done on Modularity,
> containers, flatpaks, OSTree, and more, gives us the opportunity to
> really re-think this.  While it is true there are dozens (or more)
> additional solutions to the too-fast/too-slow and the
> incompatible-libraries problems, these technologies seem to be gaining
> the most adoption across a variety of use cases.  They are all also
> generally well supported in Fedora and we need to aggressively push
> them to achieve this goal or determine where the dead-end is so we can
> move to the next innovation.

We have a lot of flexibility with all these technologies. What we need
to achieve through our processes - CI, the release process, etc, is to
enable users to take advantage of the technologies to achieve their
goals - to get their work done - without having new problems thrown at
them - excessive complexity, instability, etc.

> I personal am hugely in favor of us adopting a bootable-base model
> that allows us to iterate the kernel and the various user-space pieces
> at the speed of the upstream, the user's desires and the builder's
> desires[^0] all at the same time.  While this will require us to do
> some level of NxM matrix building and testing, a base that didn't have
> to change often for most use cases reduces the matrix considerably.

The term "bootable-base" concerns me - because it could be interpreted
to mean a minimal bootable set - just enough to get systemd and dnf
running, perhaps. In another mail, you explained what you meant as
"light up the machine level [...] and get containers/flatpaks/etc
running". What does it take to get containers running usefully? It
probably looks quite a bit like Fedora CoreOS. What does it take to
get Flatpaks running in a useful way to users? - you need a full
desktop environment - something like Fedora Silverblue (or the default
install set of Fedora Workstation if you prefer loose packages).

While the Fedora release today contains a lot more software than this
"core operating system" - generally our release processes today are
targeted at trying to release a stable core operating system - and
this is something we can't lose if we start changing around how things
work. It's not that I don't think the maintenance of glibc and gcc is
really important, but if we refocus our release processes only on
that, and one day a broken wpa-supplicant rebase lands and half our
users lose networking - that would be a really poor outcome for
Fedora.

> I'd push Brendans' concept further and suggest that we try to
> eliminate as many of the compilers, libraries and core system tools as
> possible from this bootable-base so that those can iterate at their
> own speed, perhaps 4 year for a laptop vendor and 30 day for a
> experimental ARM device.  Fedora as a project might not build output
> for the whole range, but a build system that allowed us to help others
> be successful would be a huge help here.

Fedora needs to be an operating system provider, not just an operating
system toolbox provider. There are a lot of use cases for the
"operating system toolbox"

 - To build the operating systems that Fedora releases - CoreOS,
Workstation, etc.
 - To create the containers, Flatpak runtimes, and Flatpaks that Fedora releases
 - For users to create application containers
 - To create development environments (pet containers)
 - For adventurous users to create new, customized operating systems

but you can't do integration testing on operating system toolbox,
because the whole point is that you can integrated it any way you want
and only the end user defines what is broken and what is working.
Producing a *quality* operating system requires us to focus our
processes on the integrated operating systems that we produce, on the
applications we produce - and that's what our processes should be
around.

Could we replace the current 6 month release processes with an
alternate set of processes around multiple rolling branches? It's
certainly a possibility, but it's going to be very difficult to get a
high level of stability - a level of stability that is acceptable to
all end users - without a process where the *entire operating system*
gets beta tested before being pushed out.

If we want to move in the direction of rolling releases, the first
step is to get the continuous integration testing and gating in place
to make rawhide consumable by a broader set of people. That would be
incredibly useful even if we keep the current 6 month tempo, but
essential if we want to move to a rolling stable model. Until we can
demonstrate that, it seems really premature to talk about rolling
stable models.

Owen
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux