# Updates and going back

> Updates install next to the running system. If the new one fails to start, the old one starts on its own.

Source: https://wolos.pages.dev/manual/updates

## What it is

WolOS keeps two copies of the system, called slots. An update of the whole release builds the next slot while you keep working in the current one. The next start uses the new slot; the old one stays as the way back.

## Why

An update should never be able to ruin your day. If the new system fails to start three times in a row, the computer starts the other slot by itself, with no menu to find and nothing to type. Your files live outside the slots and never move.

## How

- **Checks** run in the background, at most once every 20 hours. They only look: nothing installs on its own.
- **Update Now** in Settings installs fixes inside the current release.
- **A new release** builds the other slot from a copy of the running one, moves the package snapshot forward, and signs a new boot image. Any failure deletes the new slot and leaves you where you were.
- **Going back:** pick the previous system in the boot menu, or let the three-try rule do it.

From a terminal:

| Command | Does |
|---|---|
| `wol update status` | What is available, which slot is running, other kernels found |
| `wol update apply` | Builds the next slot from the new release (as administrator) |
| `wol base verify` | Checks every base file against the signed list and names changed ones |

### Installing packages on a sealed system

The running system is sealed and checked at every start. `pacman -S` still works: the change goes into a layer merged over the system at once, with no restart, and the next release update folds it in. Kernel and systemd packages go to the pending slot instead and take effect at the next restart. Developers can unseal with `wol seal off` until the next update.
