Skip to content

Releases: junkerderprovinz/bombvault

v10.3.8

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 28 Oct 14:45

BombVault 10.3.8 lets you rename every storage location, lets the trial restore pass on backups that contain hardlinks and links the app's new F-Droid listing.

✨ Added

  • BombVault is on F-Droid. The Android app has its F-Droid listing now, and Settings, Apps links it where the button said "Soon". The README and the documentation's Android page link it too. F-Droid builds and signs the app itself, so a new release reaches it a few days later, and switching between the F-Droid app and the APK means uninstalling the other one first.
  • Every storage location can be renamed. A folder that several sections share, such as one S3 bucket folder the backup paths point into, took its name from the folder's last part and offered no way to change it. The off-site copy a section's settings describe offered only its keep rules. Both now have a Name field on their page under Storage locations, like every other location. Thanks to @manilx for asking for it. (#384)

🐛 Fixed

  • A trial restore no longer fails on hardlinked files. restic's restore size counts a file with several hardlinks only once, but the restore writes it under every name. So a backup with hardlinks came back with more bytes than restic reported, and the trial restore stopped with "verification mismatch" although every file was there. It now compares the restored files and bytes with the snapshot's file list, which counts every name too. Running containers never played a part, since the trial restore only compares the backup with itself. Thanks to @one4spl for testing 10.3.5 and reporting it. (#379)

v10.3.7

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 27 Oct 13:05

BombVault 10.3.7 restores the files you pick into a folder without the folders above them.

🐛 Fixed

  • Picked files land directly in the target folder. A file ticked in a container's restore window came back below its whole backup path, such as host/user/user/appdata/dockhand/stacks/DXP6800/immich/compose.yaml, and folder sets and ZFS datasets let two picks with the same name overwrite each other. Now a file comes back as just the file, a folder as the folder with its contents, and picks from different folders keep only their path below the folder they share, while Replace original is unchanged. Thanks to @manilx for reporting it. (#383)

v10.3.6

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 27 Oct 11:34

BombVault 10.3.6 shows every bandwidth limit in MB/s and Mbit/s next to the KiB/s you enter, and its dropdowns follow GlimStone 3.6.3.

⚡ Improved

  • Bandwidth limits also read in MB/s and Mbit/s. You still enter them in KiB/s, the unit restic takes, so the values you set keep working. Next to each field the same rate appears in bytes and in bits while you type: 2048 reads as ≈ 2.0 MB/s (16.8 Mbit/s), which you can hold against the speed your provider quotes. This covers the off-site bandwidth, the upload limit while streaming, Busy from on a container's When the app is busy card, a pull source's download limit and a storage location's own limits. Thanks to @one4spl for asking. (#380)
  • Dropdowns answer the keyboard like a select. With a dropdown focused, typing the first letters of an entry picks it, even while the list is closed. Home and End jump to either end of an open list, and after a pick or Escape the focus is back on the field. A tick marks the current entry, and the mouse wheel still steps through a focused field. The language picker works the same way, flags and all.
  • A busy button tells a screen reader that it is working instead of only showing its spinner.

🎨 Design

  • GlimStone 3.6.3. The interface follows the latest release of its design language, and the Version card on the Info page says so.
  • Enterprise File Fabric has a mark of its own. In the list of providers it shows the storage symbol instead of the plain cloud that stands in for a missing logo.

v10.3.5

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 25 Oct 09:52

BombVault 10.3.5 lets the trial restore pass on Unraid's default restore folder.

🐛 Fixed

  • A trial restore no longer fails when only file metadata could not be set. The default restore folder sits on the /mnt/user share, which refuses ownership and trusted.* extended attributes. restic still wrote every file, but the trial restore stopped at that error, so Containers and Folders could never go green under Trial restore. It now carries on and compares the restored files and bytes with the snapshot, and only a real difference fails it. A normal restore already worked this way. Thanks to @one4spl, who found the line. (#379)

v10.3.4

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 24 Oct 22:37

BombVault 10.3.4 lets a container's scheduled backup wait while somebody uses the app and try again on its own, instead of failing and waiting for you to press Try again.

✨ Added

  • A scheduled backup waits while the app is busy and tries again on its own. A Pre-backup command that exits with code 75 defers it instead of failing it. The new When the app is busy card on a container's Settings tab sets how often it is tried again, an optional time window that may run past midnight, and how long it waits at most, then it gives up under Needs you or backs up anyway. The rest of the run goes on, the wait survives a restart, and you get one notice when it waits and one when it ends. A backup you start yourself always runs right away. (#378)
  • Ask Plex, Jellyfin or Emby before a scheduled backup. The Activity check asks the media server whether anybody is watching, with Plex's own token from its Preferences.xml or an encrypted API key for Jellyfin and Emby. Paused sessions can stop counting after some minutes, and you choose whether a server that does not answer lets the backup run. BombVault asks the server directly and otherwise through curl or wget inside the container, which also reaches containers on br0 or macvlan. (#378)
  • Wait while the container sends data. For apps without such a check, such as game servers or downloaders, a scheduled backup can wait while the container sent more than a rate you set within the last few minutes, read from Docker's own counters. (#378)

🐛 Fixed

  • The exclude previews say what the backup does. On a phone the warning under a long exclude line no longer shrinks to a column one word wide. The ZFS preview warns about a line that names part of the snapshot path the backup reads, such as .zfs, snapshot or bombvault-*, which the backup ignores because it would leave a whole dataset out, and it counts the files of a child dataset once instead of twice.

🌐 Translations

  • The new texts in all 42 languages, and the documentation in all 26.

v10.3.3

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 24 Oct 19:02

BombVault 10.3.3 stops warning about anonymous Docker volumes and shows every folder it cannot reach where you would look for it.

🐛 Fixed

  • Anonymous Docker volumes no longer turn backups orange. A folder an image declares and nobody mapped ends up as a volume with a 64-character name under /var/lib/docker/volumes, and it usually holds a cache. A backup with one stays green again. Named volumes and other folders outside Host Data still get the warning. (#377)
  • The Backup folders card lists what BombVault cannot reach, and the host path works as an exclude. Volumes show up next to bind mounts, each with its path inside the container and its host path and the note that it can't be backed up, and an anonymous one says it causes no warning. To silence a warning, an exclude line can name either path, including the host path the warning shows, such as /var/lib/docker/volumes/<name>/_data. The preview confirms it, and the line never goes to restic. (#377)
  • An exclude line can no longer leave out a whole backup folder. A line that named a backed-up folder or one above it, such as /host/user where Host Data sits inside BombVault, or /config when that whole volume is backed up, went to restic as typed, and the backup kept nothing while it reported success. Containers, folder sets and ZFS datasets ignore such a line like / and *, and the preview warns about it. To leave a whole folder out, untick it under Backup folders.

🌐 Translations

  • The new texts in all 42 languages, and the documentation in all 26.

v10.3.2

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 24 Oct 16:23

BombVault 10.3.2 lets an exclude turn off the warning about data outside Host Data, and an exclude line / can no longer empty a backup.

🐛 Fixed

  • An exclude turns off the warning about data outside Host Data. A container with data BombVault cannot reach, most often an anonymous Docker volume under /var/lib/docker/volumes, turned every one of its backups orange, and nothing made it stop. Add the folder's path inside the container, or a folder above it, to the container's exclude patterns, and the warning leaves that folder out. The preview under the field says the folder sits outside Host Data and that the line turns off its warning. (#377)
  • An exclude line / no longer empties the backup. An exclude of /, or a line such as * or /** that matches every path, went to restic as it was, for containers, folders and ZFS datasets alike. The backup then held nothing but empty folders and still reported success. BombVault ignores such a line, and the exclude field says under it that it would exclude everything.

🌐 Translations

  • The new texts in all 42 languages, and the documentation in all 26.

v10.3.1

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 24 Oct 12:50

BombVault 10.3.1 can keep the newest ZFS replica snapshots on the source too, and an orange line in the log says why it is orange.

✨ Added

  • Keep replica snapshots on the source too. The Replica card of a ZFS entry has a new field, Keep on this server. It sets how many of the newest replica snapshots stay on the source after each replica, next to the ones the target keeps. Their files can be read or copied right away from .zfs/snapshot or a clone. Rolling a dataset back to an older one needs zfs release on the newest first, and the copy on the target then goes back to the newest snapshot both sides still share, which the failed replica names. The documentation has the commands. 0 or 1 keeps only the newest, as before. (#359)

🐛 Fixed

  • An orange line in the log says why it is orange. A backup that went through but left something out, such as data outside Host Data or files it could not read, turned its line orange without a word. The line names what was left out and the folders or files behind it, every note of the run in your language. (#377)

🌐 Translations

  • The new texts in all 42 languages, and the documentation in all 26.

v10.3.0

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 23 Oct 23:59

BombVault 10.3.0 adds a memory limit per backup, keeps servers and phones that are switched off in the group, and sends ZFS replicas to a ZFS server a shorter way. It also fixes a long list of things: storage locations of almost every kind connect and stay connected, restores come back on the image they were backed up with, and backups, copies, checks and alerts that used to stop or vanish without a word now finish or tell you why.

✨ Added

  • Memory limit per backup. Settings, System, Performance has a new field, Memory limit per backup (MiB). It sets a soft limit for each backup process, so a large backup slows down instead of being killed for running out of memory. 0 sets none, which is how backups ran before.
  • Instances that are away stay in the group. A server that is shut down or a phone with the app closed keeps its card on the Instances page and its row on the Pairing page, marked Inactive in grey with when it was last seen, and comes back as the same card. Remove works on such a card whichever modules are switched on, and ends the member's requests, idle ZFS receive slots and waiting key requests. Right after a restart a card says Checking in grey instead of Not connected in red. The Android app shows an instance that is away the same way and also lists the instances of the group it never met itself.
  • Put BombVault's SSH key on a Storage Box or an SFTP server with the account's password. The password is used for that one sign-in and kept nowhere, and a wrong one is reported as a wrong password, also by servers that ask for it as a prompt. The command for doing it by hand is shown next to it, filled in with the host, user and port.
  • A bucket field for S3 keys that may open only one bucket, such as a Cloudflare R2 object token or a scoped AWS key. These never passed the connection test, because the test listed every bucket. With the bucket typed in, the test and the folder browser open that bucket.
  • Choose the drive or workspace a sign-in opens. A OneDrive sign-in with several drives, or a Zoho WorkDrive with several workspaces, asks which one to use instead of leaving the location unusable.
  • SFTP and Storage Box servers are held to their key. The connection test shows the fingerprint of the server's key, and BombVault refuses the server if it later shows a different one. Until now no host key was checked at all.
  • Switches for yes-or-no settings of FTP, SFTP and SMB servers instead of free-text fields. FTP asks for its encryption as one choice: none, explicit TLS, or implicit TLS on port 990.
  • A share field for SMB servers that do not list their shares. The test opens that share, and a location can no longer be saved or get a new folder on the list of shares itself, where every backup failed later.
  • Take over a replica folder from an earlier install. After BombVault was set up again, the replica target refused the folder this BombVault had filled before, and only a new name and a full send got the replica going. The replica card offers Take over the folder, and the next replica carries on from the copies in it.
  • Start a new repository where one is gone. A remote storage location that held backups and suddenly holds no repository, such as a rest-server whose disk did not mount, is no longer filled with a new, empty one on its own. Its page says so as soon as a backup or copy finds it gone, and Start a new repository here does it once you decide to, for every section of the location at once and for named repositories too.

🎨 Design

  • Instance cards are all one size. Every card of the grid is as wide and as tall as the tallest one, and the logo sits at the top beside the name, at one size on every card. In a single column a card is as tall as what it holds.
  • Names are shown in full. A long name on a card wraps, the badges move below it, and the kind of instance has a line of its own. In the picture of the group, names wrap too instead of being cut short.
  • Every BombVault in the picture of the group shows the logo, this server, the other instances and the phones, with a small round badge that says whether it is a server or a phone.

⚡ Improved

  • ZFS replicas to a ZFS server take a shorter way. The host pipes zfs send straight into its own ssh to the server, with BombVault's replica key and the server's pinned host key, and falls back to the way through BombVault when it cannot. Every ssh session prefers AES-GCM, and a stream through BombVault gets a 32 MiB buffer, also on a BombVault that receives it. Nothing has been measured on real hardware yet, so any gain depends on both machines, and the rate shown counts the compressed stream. (#359)
  • Closing an anomaly says what happens to the old backups. The question before you acknowledge it or mark it as expected says that an open anomaly keeps every old backup of its item, and that once it is closed the next cleanup deletes old backups by the keep rules again. A bulk close names the held item, or counts them when several are held. (#360)
  • Checks and prunes of large repositories finish. They were cut off after 15 or 30 minutes per repository, so a large remote repository never got its space back. They run as long as restic keeps reporting, and a prune is held to BACKUP_MAX_HOURS like a backup.
  • A check, trial restore, unlock or prune started by hand keeps going when the tab closes or a proxy gives up waiting. The page says the run goes on, and its result shows up when it ends.
  • Deleting backups answers as soon as they are gone and reclaims the space afterwards, so a delete on a large remote repository is no longer reported as failed after every snapshot was already removed.
  • Back up selected hands a selection of several kinds to the server. The page started one kind after the other and stopped when you left, so the later kinds were never backed up. The server takes the whole selection now, and a kind that cannot go at all is named with its reason.
  • Alerts get through. Each notification channel sends on its own with its own time limit, so one host that never answers no longer silences the rest, and an alert no channel took is tried again. With summary messages on, a frozen guest, a failed retention or a crossed budget still goes out right away.
  • Graceful VM backups wait up to ten minutes for the guest to shut down and never force it off, so a Windows guest installing updates is not cut off halfway. A guest that still runs after that is left alone, and that backup fails with the reason.
  • Restores come back on the image the container ran when the restored backup was taken, not on a newer one pulled later, also when later backups already ran on the new image. A copy restored next to the original starts on that image too, and Update after backup no longer puts the container back on the image the restore went away from; it waits for a newer one. An image is pulled only when it is missing, private registries get their sign-in, and a locally built image restores on a host without internet.
  • Errors say what to change. A refusal because a section or batch is busy says so in words, also for a ZFS entry, its backups or a safety snapshot held by a run, and Replicate now, a replica that cannot start and a second check of a received repository say why too. A wrong rest-server password says to check the user name and password, a refused SFTP key says to add the key the form shows, an FTP server that wants encryption names the setting, a wrong Nextcloud address shows the form it needs, and a Garage region error names s3_region. A copy that fails behind rclone names rclone's own reason instead of a bare error 500.
  • rest-servers with a self-signed certificate can be reached. Put the certificate into the certs folder of BombVault's data folder (appdata/bombvault/certs on Unraid), and backups, copies and the delete protection test trust it without a restart. The error for an untrusted certificate names that folder.
  • S3 locations need less typing. The region is read from addresses that name it (AWS, Backblaze B2, Hetzner, Scaleway, OVH, Wasabi), Garage starts with its own default region, IDrive e2 asks for its endpoint, and an address pasted with the bucket on it, the way the R2 dashboard shows it, is used for the server and the bucket. A bucket made from the folder browser goes into the region the form names, also on AWS outside us-east-1.
  • The storage class picker offers what the service takes. A class the service refused broke every upload after a save that went through. Setting a location back to the default class takes effect, also where it holds a section's own folder or a direct repository, and More settings shows only the options that shape a new bucket.
  • Pruned backups free their space on Google Drive and OneDrive. Google Drive deleted pruned data into the trash and OneDrive Business into its recycle bin, where it still counted against the quota. A Google shared drive can be entered under More settings.

🐛 Fixed

  • Cloud sign-ins stay signed in. A token rclone had refreshed was overwritten with the old one at every restart and every change to the rclone config, so Box, Jottacloud and other services whose refresh tokens work once lost their sign-in. The fresh token is kept, also in the recovery kit and in exports, and changing a location's connection or browsing its folders no longer uses it up. Browsing a location's folders signs in with that location's own current token, never with one an earlier browse of another location of the same service left behind.
  • Cloud services that could not be set up connect. Jottacloud takes the login token from its security page, the Zoho WorkDrive command carries the region, ShareFile gets its address with the token, and Mega and Pr...
Read more

v10.2.0

Choose a tag to compare

@junkerderprovinz junkerderprovinz released this 20 Oct 12:53

BombVault 10.2.0 makes the cloud credentials one list of saved sign-ins with a default, lets a section's own folder move into a storage location you already have, and lets you remove any storage location. The storage settings are tidier too, every list shows its entries as rows, and card buttons sit at the bottom right.

✨ Added

  • Sign-ins are one list. The shared cloud credentials and the extra credential sets are now saved sign-ins, shown under the storage locations with the locations that use each one. A star marks the default, which is used wherever no sign-in is picked, such as an address typed in by hand or a recovery on a fresh install, and Make default gives the star to another one. A sign-in is saved when you add a storage location, and Add storage location can also use a saved one instead of new keys. (#358)
  • Edit and test a sign-in in one window. Edit opens a sign-in in the same window from the settings page and from a storage location's page. Test signs in to every storage location that uses it with what you typed, before anything is saved. A sign-in can be removed only when no storage location uses it, and the default goes only as the last one. (#358)
  • Move a section's own folder into a storage location. One window moves the own folder of one or several sections into a storage location you already have, and the folder then follows that location's sign-in, protection and limits. Before you switch, it says for each section what happens: where new backups go, whether a copy that is already there becomes the own folder, and which backups are copied over first. A remote storage location lists the sections that keep their own backups there. (#358)
  • Remove any storage location. Every storage location page has Remove storage location: keep the backups there, or delete them first once the window has listed what goes and which entries would lose their only backup. Entries that back up to a removed repository follow their section again. A section's folder can't just go, because every section needs one, so the window asks for the folder the sections move to and checks it like a folder typed into the settings. (#353)
  • Paste an rclone configuration in Add storage location. The Rclone tile takes remotes from an rclone.conf. The rclone card on the storage settings page is gone, since SMB and WebDAV were already tiles of their own. (#358)
  • Replica only, no backup. The replica card of a ZFS entry has a switch that turns off the own folder and the off-site storage locations of the ZFS section, so a run sends only the replica. Switching it off brings the own folder back. (#356)
  • One card per release in What's new. After an update the window lists every release since the one you had, newest first, each with its notes and its changes and Go there where a page shows one. (#354)

🎨 Design

  • Settings, Storage locations lists your storage locations and shows which section goes to which, as the Storage locations page does. (#358)
  • One card for the off-site copies. Each section's off-site copy is a row with test, replicate and setup, instead of a card per section. The rest opens in the section's window, and the row's buttons follow the button labels setting. (#358)
  • Lists are rows. Every list shows its entries as rows parted by a thin line, without a grey box behind them.
  • Card buttons sit at the bottom right. Buttons that act on a whole card, such as Add storage location, are in the card's foot, as they are in a window.
  • A menu with one action is a button. Where More would hold only one action, that action stands on its own.
  • Provider logos. In Add storage location, Amazon S3, QingStor, Sia, RustFS, FileLu, Drime, Synology C2, Shade, 1Fichier and Rclone show their marks, and each tile lights up in its brand's colour under the pointer. A kind of storage without a brand lights up in black or white. premiumize.me is gone from the list, since it is a download service; a location set up with it keeps working.
  • The encryption picture follows its switch, with sealed packs when backups are encrypted and readable ones when they are not, and it is wide and low, so the Encryption card is no longer the tallest on the page.
  • The compression selector sits beside its label at the size of its three options.
  • Every Got it button has a check mark.

⚡ Improved

  • One place for how long backups are kept. The copy from a section's Off-site field follows the How long to keep card of its storage location like every other copy, and a section can have its own values there under Rules per section. The Off-site retention card is gone; the Retention tab points to the storage locations and keeps the preview. The update changes no copy's rules. (#351)
  • A local folder shows the delete protection card only when it has a protection you can switch off.
  • The replica hint says how to get a replica without a backup. (#356)
  • "This location lies inside another repository or target" says which one, so you can find it and remove it. (#358)

🐛 Fixed

  • An off-site copy from S3 to S3 failed with "The Access Key Id you provided does not exist". When a section's own folder was on one S3 server and its off-site copy went to another, the copy opened the own folder with the off-site server's key. Both ends sign in with their own keys now. (#358)
  • A removed storage location could block adding it again. Clearing a section's Off-site field left a hidden row behind that removing the location missed, and it went on blocking the same place. Removing a location takes such rows along, rows the storage page does not list no longer block a location, and the update cleans up the leftovers. (#358)
  • A sign-in still in use could be lost when the list was saved. A storage location that named it then signed in with the default keys without saying so. Such a save is refused now. (#358)
  • Saved sign-ins showed their secret as missing, every one of them. (#358)
  • A location typed into an off-site window was lost when the window was closed right after typing it. (#358)
  • The preview in Add storage location showed s3:s3:http://... when the endpoint was typed with s3: in front. The saved location was always right. (#358)
  • The switches in the section graph were hard to tap on a narrow phone. On a 320px screen their tap area was smaller than 24px.
  • Reset to the storage location asks before it keeps less. On the How long to keep card it removed backups without the question that Ask before keeping less promises.
  • Container data under /DATA/AppData was not found. ZimaOS keeps app data in AppData, and BombVault only matched appdata in lower case, so a backup there held the configuration and none of the folders. The name matches in any case now, still only as a whole name, and a restore writes the data back under the folder's own spelling.
  • A running ZFS replica had no line in the activity log until it was done. It shows its progress now, as a backup does. (#356)
  • The widget showed a ZFS replica as a backup. Every line names its section and reads the way the activity log puts it. (#355)
  • The new features of 10.1 had no green dots, so every dot stayed grey after the update. They have them now, and every new feature of a release gets one. (#354)

🌐 Translations

  • The new texts in all 42 languages, and the documentation of What's new in all 26.

Upgrading

  • Nothing has to be changed. At the first start the shared cloud credentials become a saved sign-in marked as the default, or the saved sign-in with the same keys takes the mark. Saved sign-ins with the same keys become one, and an own folder typed in under a storage location's folder, with the same keys, follows that location. Nothing signs in differently, and a note on the Sign-ins card says what the start did.