Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@

- [bootc image](experimental-bootc-image.md)
- [composefs backend](experimental-composefs.md)
- [`man bootc-root-setup.service`](man/bootc-root-setup.service.5.md)
- [fsck](experimental-fsck.md)
- [install reset](experimental-install-reset.md)
- [--progress-fd](experimental-progress-fd.md)
Expand Down
73 changes: 73 additions & 0 deletions docs/src/man/bootc-root-setup.service.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# NAME

bootc-root-setup.service

# DESCRIPTION

This service runs in the initramfs to set up the root filesystem when composefs is enabled.
It is only activated when the `composefs` kernel command line parameter is present.

The service performs the following operations:

- Mounts the composefs image specified in the kernel command line
- Sets up `/etc` and `/var` directories from the deployment state
- Optionally configures transient overlays based on the configuration file
- Prepares the root filesystem for switch-root

This service runs after `sysroot.mount` and `ostree-prepare-root.service`, and before
`initrd-root-fs.target`.

# CONFIGURATION FILE

The service reads an optional configuration file at `/usr/lib/composefs/setup-root-conf.toml`.
If this file does not exist, default settings are used.

**WARNING**: The configuration file format and composefs integration are experimental
and subject to change.

## Configuration Options

The configuration file uses TOML format with the following sections:

### `[root]`

- `transient` (boolean): If true, mounts the root filesystem as a transient overlay.
This makes all changes to `/` ephemeral and lost on reboot. Default: false.

### `[etc]`

- `mount` (string): Mount type for `/etc`. Options: "none", "bind", "overlay", "transient".
Default: "bind".
- `transient` (boolean): Shorthand for `mount = "transient"`. Default: false.

### `[var]`

- `mount` (string): Mount type for `/var`. Options: "none", "bind", "overlay", "transient".
Default: "bind".
- `transient` (boolean): Shorthand for `mount = "transient"`. Default: false.

## Example Configuration

```toml
[root]
transient = false

[etc]
mount = "bind"

[var]
mount = "overlay"
```

# EXPERIMENTAL STATUS

The composefs integration, including this service and its configuration file format,
is experimental and subject to change.

# SEE ALSO

**bootc(8)**

# VERSION

<!-- VERSION PLACEHOLDER -->