librelad 5cf5b88b16 fix(webui): flatten redundant components/admin/config/icons/config/ + repair engine logos
The config-category icons sat at admin/config/icons/CONFIG/ — the inner config/
duplicates the subsystem name; they belong in the icons root. Moved all 6
(backup, features, general, network, security, webui) up to
components/admin/config/icons/ and updated the two consumers (config-manager.js
header icon, config-sidebar.js category icons).

Also fixed the backup-engine logos: scripts/backup/engines/{restic,kopia,borg}
.json pointed 'logo' at /icons/config/backup.svg — a path that 404'd on two
counts (missing the components/admin/config prefix AND the now-removed config/
nesting), so the engine-details modal logo silently hid. Repointed to the real
served path /components/admin/config/icons/backup.svg.

(Left the meaningful icon groupings alone — admin/system/icons/{cpu,os} and
apps/core/icons/vpn are vendor/OS/provider logo sets, not redundant nesting.
The backup engines borrowing an admin-config icon is a minor smell; a dedicated
backup-engine icon could replace it later if wanted.)

Signed-off-by: librelad <librelad@digitalangels.vip>
2026-05-31 00:07:49 +01:00

25 lines
1.1 KiB
JSON

{
"id": "restic",
"name": "Restic",
"tagline": "Modern encrypted backup with native deduplication.",
"logo": "/components/admin/config/icons/backup.svg",
"supported_types": ["local", "sftp", "rest", "s3", "b2", "gs", "azure", "rclone"],
"properties": [
{"label": "Encryption", "value": "AES-256-CTR + Poly1305-AES authentication"},
{"label": "Key derivation", "value": "scrypt"},
{"label": "Deduplication", "value": "Content-defined chunking (CDC)"},
{"label": "Compression", "value": "zstd (auto)"},
{"label": "Integrity", "value": "Cryptographic on every read"},
{"label": "License", "value": "BSD-2-Clause"}
],
"features": [
"Snapshots are immutable and content-addressed.",
"Deduplicates across hosts and apps without configuration.",
"Same binary speaks SFTP, REST, S3, B2, GCS, Azure, rclone.",
"Built-in repository verification via `restic check`.",
"Single static Go binary — no runtime dependencies."
],
"docs_url": "https://restic.readthedocs.io/",
"version_command": "restic version"
}