containers/toolbox

Possibility to "rebase" a container

bilelmoussaoui opened this issue · 2 comments

Is your feature request related to a problem? Please describe.

Currently, when updating say, from Fedora 38 to Fedora 39. You would usually stick with using your old container until at some point, one of your projects starts depending on a too new release of a package forcing you to create a new container. The creation bits are pretty straightforward; the annoying part is copying all you had installed and configured inside the old container and it would be pretty handy if toolbox could just do some parts of it for me, optionally.

Describe the solution you'd like

When running toolbox create, if the user has an old version of the distribution container, toolbox could ask to re-install the existing packages from the old one maybe?

Describe alternatives you've considered

Weird local shell scripts to make my life easier

Additional context
Nothing to add

You can actually update the Fedora version inside the Container

You can actually update the Fedora version inside the Container

Yeah, one option is to try to upgrade the existing Fedora container in-place to a newer Fedora release, just like one would upgrade a Fedora host.

However, sometimes people don't want to do that, because of too many local changes that can either break the upgrade or they want to start from as close to a pristine state as possible. For those cases, I can think of two options.

One, you could maintain a separate Containerfile where you layer on the extra packages that you use on top of the registry.fedoraproject.org/fedora-toolbox image, and then always create containers from images built from this Containerfile.

Or, you could maintain an Ansible playbook that you always run to perform post-installation customization on a container. I think Toolbx could grow some features to make it easier to do that.