The potential problems with distribution downgrades

February 28, 2009

One of the things I wish for every so often is the ability to downgrade Linux distributions, not just upgrade them (which is common and generally well supported; I can think of only one large Linux distribution without upgrade support, and you can argue that Red Hat Enterprise Linux is a special case). This wouldn't be as good as various forms of 'live upgrade', but it would still be useful and it would certainly make me a lot less nervous about doing upgrades.

Conceptually, a downgrade is easy; you run the normal package upgrade selection process in reverse, replacing all of the current packages with the most recent versions from what you're downgrading to. In theory this should be relatively simple to implement.

(I think you'd want to do it from a standalone environment, because otherwise the ordering constraints might get what programmers call 'interesting'.)

In practice I think that the big problem is the issue of reverting various sorts of configuration and data files to older versions of their formats. For example, consider a syndication feed reader where the format for storing your feed information changed between major versions. When you upgrade your distribution and get the new major version of the feed reader, it will migrate your old feed data to the new format and then carry on as normal. But when you downgrade you need to run this in reverse, converting new format files to old format files that the older version of the feed reader can read. And there are generally no tools for this.

The result is that while a downgrade is technically possible, the result might not be very useful without a lot of fixup work, and thus without a lot of work writing ad-hoc fixup tools (assuming it's even possible without losing significant amounts of information, which it may not always be). Thus I don't think it's any surprise that no Linux distribution has attempted to support downgrades, however nice they would be to have; what you could give people for a reasonable amount of work would be so fenced in with caveats and cautions that it would be useless to most users.

Written on 28 February 2009.
« The peculiar case of the conference spammers
What it would take for me to use Fedora Rawhide »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Sat Feb 28 04:19:34 2009
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.