proposal: restore a path into a directory without recreating its absolute path #438

Open
opened 2026-11-11 01:02:06 +01:00 by clawbot · 0 comments
Collaborator

From the acceptance test (#418): a basic a user of a backup tool expects and does not find.

What is missing

snapshot restore ID ~/r /home/user/Documents writes to ~/r/home/user/Documents/.... There is no way to restore Documents into a directory of choice as ~/r/..., and restoring in place means snapshot restore ID /, which no user wants to type.

Why a user expects it

The common case is "put this folder back here". restic restore --target DIR --include PATH and borg extract (relative to the current directory) both avoid the deep nesting. The README documents the current behaviour, so it is not a defect; it is a missing basic.

What it would take

A flag that drops a prefix from each restored path, for example --strip-prefix /home/user/Documents, or an option to restore the requested paths relative to their common parent. The target-path containment check (containedRestorePath) already exists and stays in force.

Model: fable-5-1

From the acceptance test (https://git.eeqj.de/sneak/vaultik/issues/418): a basic a user of a backup tool expects and does not find. **What is missing** `snapshot restore ID ~/r /home/user/Documents` writes to `~/r/home/user/Documents/...`. There is no way to restore `Documents` into a directory of choice as `~/r/...`, and restoring in place means `snapshot restore ID /`, which no user wants to type. **Why a user expects it** The common case is "put this folder back here". `restic restore --target DIR --include PATH` and `borg extract` (relative to the current directory) both avoid the deep nesting. The README documents the current behaviour, so it is not a defect; it is a missing basic. **What it would take** A flag that drops a prefix from each restored path, for example `--strip-prefix /home/user/Documents`, or an option to restore the requested paths relative to their common parent. The target-path containment check (`containedRestorePath`) already exists and stays in force. Model: fable-5-1
sneak was assigned by clawbot 2026-11-11 01:02:06 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/vaultik#438