#137 is tracking part of this, a lot of related discussion in coreos/fedora-coreos-tracker#399
Basically we should support something like bootc install factory-reset that would configurably wipe local system state.
On the implementation side...I think the best way to do this would be something like:
- Create new deployment with fresh
etc targeting a new stateroot
- Boot into it
- optional: clean up old deployment + stateroot
The beauty of this approach is that the "factory reset" would actually also be fully transactional, i.e. you could roll back into the previous state. It'd be easy to copy over any desired state (SSH host keys, cached container images e.g.) from the previous boot before deleting it.
Active work
Goals:
- Make stateroots more visible, e.g. at least status should show them if different
- Need to support explicit pruning of deployments e.g.
bootc deployment rm (like ostree admin undeploy) so that I can get rid of old stateroots
Ideas:
- Add
bootc mount <deployment> /run/tmp-next-root so that I can cp -a --reflink=always /var/home /run/tmp-next/root/var/home
#137 is tracking part of this, a lot of related discussion in coreos/fedora-coreos-tracker#399
Basically we should support something like
bootc install factory-resetthat would configurably wipe local system state.On the implementation side...I think the best way to do this would be something like:
etctargeting a new staterootThe beauty of this approach is that the "factory reset" would actually also be fully transactional, i.e. you could roll back into the previous state. It'd be easy to copy over any desired state (SSH host keys, cached container images e.g.) from the previous boot before deleting it.
Active work
Goals:
bootc deployment rm(likeostree admin undeploy) so that I can get rid of old staterootsIdeas:
bootc mount <deployment> /run/tmp-next-rootso that I cancp -a --reflink=always /var/home /run/tmp-next/root/var/home