Feature idea: checkpoints/rollback

Jeff Johnson n3npq at mac.com
Fri Sep 18 09:59:27 PDT 2009


On Sep 18, 2009, at 12:51 PM, Cliff Wells wrote:

> This isn't a new idea, but I don't know if it's been discussed here
> before.
>
> It'd be useful if Smart could have a couple of facilities for doing
> rollbacks of upgrades.   I'm thinking of two mechanisms:
>
> 1) Checkpoints.  When a package is to be upgraded/removed, save a copy
> of the package (and any dependencies) that will be changed, along with
> some metadata that describes the checkpoint.   I wouldn't suggest  
> doing
> this on every update, just if the user specifies it.
>
> 2) Auto-checkpointing of specified packages.   I've been using  
> Chromium
> lately (it rocks) and every now and again, they ship a broken version.
> It'd be nice to be able to specify that some particular package should
> never be altered without a checkpoint so that it can be rolled back  
> to a
> previous version.
>

All of the above has been attempted. RPM had (if you use @rpm.org) and
has (if you use @rpm5.org) a --repackage mechanism to save what
used to be there when upgrading.

The issues are more complex because of different package managers and
distros, its impossible to get consensus on a checkpoint/rollback  
mechanism.

There's a 3rd optimization that smart should (if it doesn't already)
look at, decomposing a >100 package upgrade into smaller pieces
that can be added consistently. Poldek does this ...

> I know there's a lot of housekeeping that would have to be done (too
> many checkpoints could clutter up the filesystem in short order), but
> this seems to be a commonly requested feature in general (google
> "<distro> rollback") that might give Smart a needed boost in adoption.
>
> BTW, I recently switched from Fedora to Ubuntu, and I have to say,  
> Smart
> continues to be far superior to the native package management tools on
> both platforms.
>

Heh, Gustavo is a crackerjack programmer. I cannot say the
same for YUM developers, who are still learning that chroot(2)
affects only absolute paths:

	http://lists.baseurl.org/pipermail/yum-devel/2009-September/005855.html

because they seem incable of typing "man 2 chroot".

73 de Jeff




More information about the Smart mailing list