bootc-dev / bootc-dev/bootc

install: Support reinstallation (factory reset)

Offen
#404 22 Kommentare 15 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area/etc-var area/install enhancement
Vorherrschende Sprache
Rust
Sterne
2.3k
Forks
230
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
38

Beschreibung

https://github.com/containers/bootc/pull/137 is tracking part of this, a lot of related discussion in https://github.com/coreos/fedora-coreos-tracker/issues/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

- https://github.com/bootc-dev/bootc/pull/1389

## 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 /run/tmp-next-root` so that I can `cp -a --reflink=always /var/home /run/tmp-next/root/var/home`

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start by reviewing the active work in PR 1389 and the related Fedora CoreOS tracker discussion. Trace the existing `bootc install`, `bootc status`, and deployment entry points before defining the factory-reset flow. Done should include visible stateroots, transactional reset behavior, and explicit deployment pruning as described in the goals.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust
Bereich
cli, operating-systems
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.