Difference between apps: Borg Backup, Borg Server, BorgWarehouse

There are three Borg Backup apps in YunoHost, and it’s a bit confusing:

https://apps.yunohost.org/app/borg

https://apps.yunohost.org/app/borgserver

https://apps.yunohost.org/app/borgwarehouse

BorgWarehouse seems to (also) include a webUI for managing Borg, so at least that one’s pretty clear, although it’s still a bit confusing whether you also need to install one of the other two or not.

But what’s the difference between Borg Backup and Borg Server?

If I understand correctly – and I hope this thread can be of help to others regardless if I’m right or wrong:

  • Borg Backup – instead of local backups, push backups of your YunoHost server to an external Borg Backup server
  • Borg Server – run Borg Backup server on YunoHost, so you can push backups from other computers to it
  • BorgWarehouse – does what Borg Server does, but also has a WebUI to manage it all

Perhaps having more descriptive names would help.

1 Like

I had no idea which was what when I started using Borg and installed Borg and Borg Server, and then uninstalled Borg Server again.

The onus for giving descriptive names is a bit on the upstream programs though, in case of Borg and BorgWarehouse. Names are just that: a name that hopefully somewhat uniquely identify one thing or another.

The description could be clearer, and could maybe give some idea of how one app or another fits together with the rest of the ecosystem. Perhaps in the same way as the catalog now mentions “Potential alternative to:” only comparing non-free software, maybe a line "Overlapping functionality with catalog software: ";

I had thought to pick up your examples and extend them, but I don’t know either :wink:

  • Borg Backup:
    • Besides “plain” Borg, it integrates backup services into Yunohost and paves the way for integration with a remote backup location, especially Borg Server
    • Can be used in addition to the Yunohost-native backup functionality
    • Borg has built-in support for SSH, making remote backups easier, but can be used locally as well.
      instead of local backups, push backups of your YunoHost server to an external Borg Backup server.
  • Borg Server; I’m under the impression that:
    • It is tailormade for Yunohost to ease the hosting of repositories and the reception of backup archives from Borg
    • The main task of this app is to create a user with optionally limited storage quota and SSH enabled
    • It automates some foolproofing, such as preventing the backups from being backed up to themselves
    • It also installs Borg, it seems. Maybe to have the tools at hand to list the archives? In case of “hosting encrypted backups for a friend” it is superfluous?
  • BorgWarehouse: a separate project building on Borg, and packaged for Yunohost

In my understanding, all three can be used stand-alone to backup to a local repository. By grace of Borg’s built in SSH-ability, and to muddy requirements more, remote backups are also an option without having Borg (any flavour) installed on the target machine.

Take it all with a pinch of salt; I only used (and broke) the Borg app standalone to a remote target (last example above), because I could not get Borg Server to work and recently was not able (yet) to integrate BorgWarehouse into the already configured repositories.

2 Likes