#1463 upgrades for F23 and beyond
Closed None Opened 4 years ago by wwoods.

= phenomenon =

fedup has been abandoned by upstream due to design flaws.

= background analysis =

Quoting https://lists.fedoraproject.org/pipermail/devel/2015-May/210905.html:

We've come to the conclusion that the current [fedup] design is unsupportable, mostly due to upgrade.img, which turns out to cause more problems than it solves. [...] For example, here are three F22 release-blockers, all caused by upgrade.img:
https://bugzilla.redhat.com/show_bug.cgi?id=1185604 \
https://bugzilla.redhat.com/show_bug.cgi?id=1209941 \
https://bugzilla.redhat.com/show_bug.cgi?id=1207251 \
That first one is a nasty crash inside systemd, which led to a mailing-list discussion[1a] where Lennart concludes that the double-switchroot thing we're doing with upgrade.img is just not supportable[1b]. And I totally agree.

[1a] http://lists.freedesktop.org/archives/systemd-devel/2015-March/029030.html \
[1b] http://lists.freedesktop.org/archives/systemd-devel/2015-April/031013.html

= implementation recommendation =

Upstream (that's me) recommends implementing system upgrades in DNF (or as DNF plugin/extension).

A working prototype exists: https://github.com/wgwoods/dnf-plugin-fedup

FESCo should probably:

  1. sketch out a Minimum Viable Product specification for upgrades
  2. work with QA to ensure test coverage (i.e. Acceptance Criteria) for above specification
  3. work with upstream devs to decide where/how to implement upgrades:
    a. integrate into DNF?
    b. add to dnf-plugins-core?
    c. maintain as separate extension?
  4. decide whether to remove fedup from F23 or just deprecate it
    a. if deprecated: identify maintainer(s)

I think we should go with dnf-plugin-fedup. It requires some more work, because it currently conflicts with packagekit's offline update service [1]. But this should be easy enough to fix, and is also easy enough to work around. dnf-plugin-fedup seems like the right solution because it is so simple. It's trivial to wrap one's head around the idea, the implementation, and the failure modes.

Strong +1 from me as systemd maintainer.

[1] http://lists.freedesktop.org/archives/systemd-devel/2015-July/033605.html

FYI the Workstation WG plans to implement system upgrades in PackageKit (so we can have a cross-distro graphical UI for them, probably GNOME Software), hopefully in time for F23 -> F24 upgrades. For F22 -> F23 upgrades we have no plan since the relevant developers are working on other projects now.

  • ACTION: sgallagh to talk with rholy and jzeleny about incorporating distribution upgrades into DNF (sgallagh, 19:06:35)

Replying to [comment:5 sgallagh]:

  • ACTION: sgallagh to talk with rholy and jzeleny about incorporating distribution upgrades into DNF (sgallagh, 19:06:35)


(while Radek is the most visible member of the team, Jan is the team lead)

wwoods has proposed a late Change for this: https://fedoraproject.org/wiki/Changes/DNF_System_Upgrades

we're obviously well past the Change proposal cutoff, but if we're going to have to do this anyway, it makes sense to have a proper Change to work from in co-ordinating, testing and documenting it, so to me it would make sense for FESCo to accept it as a late Change.

Obviously it's pretty urgent to get the details of a new plan worked out to ensure we handle any requirements to do with flavors and the like, docs can have the new system documented, marketing can have it properly communicated to users, and QA can test it properly.

AGREED: will send change proposal to list and revist next week (+6,0,0) (nirik, 18:40:20)

I have done so.

The Change ​https://fedoraproject.org/wiki/Changes/DNF_System_Upgrades has been switched to ChangeReadyForFesco state, after a week from announcement on devel-announce@ mailing list. I am not going to open a new ticket for the Change as we already have this one.

Login to comment on this ticket.