github marcpope/borgbackupserver v2.51.0

7 hours ago

The brand-cleanup work continues. This release is primarily UI polish — consistent visual language across the app, smaller and tighter type, less noise in the activity log, plus a few real bug fixes. No database changes; safe in-place upgrade.

UI overhaul

  • Card headers — one consistent style. Settings (light blue), Clients (transparent), and Dashboard (dark gradient) used three different palettes for what should be the same thing. Standard .card-header is now a subtle neutral surface in both themes; the dark navy gradient on Dashboard / Schedules / Archive Detail collapses to the same neutral in light mode so a light page is never broken up by a dark block.
  • Tighter type, site-wide. Card headers shrunk from ~16px to 14px. Table headers switched from ALL-CAPS 13.6px to mixed-case 14px. Table body cells capped at 14px (was Bootstrap's 16px default). Topbar page title and username dropdown nudged down ~2px each.
  • Storage Locations page — three floating <h5> section titles ("Local Storage", "Remote SSH", "S3 Offsite Sync") replaced with proper card-headers. Each section now has a card frame with the action button (Add Location / Add SSH Host) inside the header, matching the rest of the app.
  • Schedules page colors toned down. Per-agent block colors went from hsl(h, 55%, 45%) to hsl(h, 32%, 38%) so they sit in the dark-navy palette instead of looking like a saturated bar chart.
  • Server Health card (dashboard) — fixed-width label and value columns so every progress bar starts and ends at the same x-coordinate across rows. Smaller, tighter type. No more dead whitespace between bar and short values like "0.48".
  • Recent Activity on the client status tab — list reformatted as a proper table (Status / Task / Repo / Time / Date), 14px text, 20 rows instead of 10. table-responsive so it scrolls horizontally on phones.
  • Sidebar version pill — was illegible in light mode (gray-on-dark-navy). Now uses light-on-dark colors hardcoded since the sidebar is always dark.
  • Mobile login gets a small header logo above the form (uses your branded navbar icon if set, otherwise the favicon mascot). Form pane fills the screen on phones.
  • Light theme login is back. Auth layout now respects the Login Page Theme override in Branding settings (which is also re-enabled — was temporarily disabled while the light variant was missing).

Branding system

  • New "App Icon / Favorite Icon" upload in Branding settings. Single 512×512 transparent PNG; BBS resizes it on demand to every favicon / Apple touch / PWA size needed. No more uploading half a dozen sizes manually. Bundled mascot is the default fallback.
  • Navbar Icon description now mentions it doubles as the small mobile-login header logo.
  • Topbar mascot image was 1536×1024 / 2.4MB shipping for a 115px display. Resized to 400×266 / 82KB — ~30× smaller. (#223)
  • Static-asset caching added via mod_headers in public/.htaccess: 7-day cache for images and fonts, 1-day for CSS/JS. Previous behavior issued a conditional GET on every page load.

Bug fixes

  • Activity log noise filtered. Routine borg warnings (Permanently added <host> to known hosts, file changed while we backed it up, stat: [Errno 2] on transient files) no longer flag a backup as "completed with warnings" or fire a notification. Added -o LogLevel=ERROR to BORG_RSH to suppress the SSH known-hosts notice at the source. Agents pick this up via the auto-update mechanism. (#225 / #223)
  • Upgrade page no longer cropped by the login mascot artwork. The post-upgrade result page now suppresses the split-pane art and uses the full frame for the upgrade log. (#222)
  • Long file paths in /notifications now wrap properly instead of overflowing the message column off the right edge.
  • Queue page duration (PR #207 by @c0dr1ver) — durations ≥ 1 hour now format as Hh Mm Ss instead of dropping the hour. Completed-row durations also get a colored progress bar showing relative job length.
  • Files in Archive count (#192) — tile now headlines the catalog-derived count (what's actually navigable in the restore browser); borg's nfiles shown as a small caption only when it differs by more than 1% (typical on systems with heavy hardlinks where borg over-counts).

Heads-up

If you've customized the Branding section, the navbar-icon and login-logo upload limits changed in v2.50.0. The new App Icon section is additive — your existing logos still work. The Login Page Theme override is functional again in light mode.

AGENT_VERSION bumped to 2.29.8; existing agents will pick this up via the server-pushed update mechanism. No manual reinstall needed.

Don't miss a new borgbackupserver release

NewReleases is sending notifications on new releases.