Files
ProxMenux/AppImage/components
MacRimi 26b47e63d9 host-backup(pbs): fix scheduled-job encryption + surface real key import error + pass --keyfile on downloads
Three bugs against the PBS encryption flow:

1. Create-scheduled-job with encryption failed with "Recovery setup
   failed: no PBS keyfile present" whenever the operator picked
   "Generate a new keyfile" but had no keyfile installed yet. The
   frontend called /pbs-recovery/setup before creating the job, but
   the keyfile was only materialised later during job creation. The
   endpoint now generates the keyfile atomically if missing before
   building the escrow blob — same prompt-first order the CLI wizard
   applies. Existing keyfiles are still trusted and never rotated.

2. Importing a valid PBS keyfile via the Web dialog returned a
   generic "did not recognise this file as a valid PBS keyfile" that
   hid the real reason (kdf mismatch, missing passphrase, corrupt
   JSON, ...). The endpoint now attaches the stderr of
   `proxmox-backup-client key info` as `tool_output` and the frontend
   renders it verbatim inside the red banner. Also strips a leading
   UTF-8 BOM before validating so an editor-inserted BOM stops being
   silently classified as "invalid keyfile".

3. Downloading an encrypted PBS snapshot failed with "missing key —
   manifest was created with key XX:XX:..." even when the correct
   keyfile was installed at /usr/local/share/proxmenux/pbs-key.conf,
   because the restore worker invoked `proxmox-backup-client restore`
   without `--keyfile`. The flag is now passed whenever a local
   keyfile exists (PBS ignores it for unencrypted archives). On a
   fingerprint mismatch the error now appends the installed key's
   fingerprint so it can be compared side-by-side with the manifest's
   expected value — same fingerprint also exposed via
   /pbs-recovery/status for the UI.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-05 23:14:52 +02:00
..
2026-06-19 23:38:57 +02:00
2026-05-30 21:54:32 +02:00
2026-05-30 21:54:32 +02:00
2026-05-23 21:27:18 +02:00
2026-06-24 21:58:21 +02:00
2025-10-06 17:40:42 +02:00
2026-06-24 23:40:22 +02:00
2026-07-01 20:13:59 +02:00
2026-03-16 18:19:19 +01:00
2026-07-05 16:50:06 +02:00
2026-05-24 16:42:44 +02:00
2025-11-18 21:27:24 +01:00
2026-05-30 21:54:32 +02:00
2026-06-30 17:58:32 +02:00
2026-06-30 17:58:32 +02:00
2026-06-28 15:17:30 +02:00
2026-06-28 13:06:40 +02:00
2025-11-21 19:49:42 +01:00
2026-06-28 15:17:30 +02:00
2026-06-05 19:45:46 +02:00
2026-05-23 21:27:18 +02:00
2026-07-05 16:50:06 +02:00
2026-06-22 18:52:26 +02:00
2026-07-05 16:58:27 +02:00
2026-07-05 16:58:27 +02:00
2026-07-05 16:50:06 +02:00
2026-05-23 21:27:18 +02:00
2026-05-30 22:14:51 +02:00
2025-11-25 19:31:22 +01:00
2026-06-07 11:31:50 +02:00
2026-07-05 16:50:06 +02:00
2026-06-07 11:31:50 +02:00
2026-06-30 17:58:32 +02:00
2025-09-28 19:40:23 +02:00
2026-06-22 11:38:06 +02:00
2026-07-01 20:13:59 +02:00