diff --git a/sysutils/nextcloud-backup/src/opnsense/mvc/app/library/OPNsense/Backup/Nextcloud.php b/sysutils/nextcloud-backup/src/opnsense/mvc/app/library/OPNsense/Backup/Nextcloud.php
index 6f72ba479e..597e999359 100644
--- a/sysutils/nextcloud-backup/src/opnsense/mvc/app/library/OPNsense/Backup/Nextcloud.php
+++ b/sysutils/nextcloud-backup/src/opnsense/mvc/app/library/OPNsense/Backup/Nextcloud.php
@@ -84,6 +84,13 @@ public function getConfigurationFields()
"type" => "text",
"label" => gettext("Directory Name without leading slash, starting from user's root"),
"value" => 'OPNsense-Backup'
+ ),
+ array(
+ "name" => "addhostname",
+ "type" => "checkbox",
+ "label" => gettext("Backup to directory named after hostname"),
+ "help" => gettext("Create subdirectory under backupdir for this host"),
+ "value" => null
)
);
$nextcloud = new NextcloudSettings();
@@ -138,6 +145,11 @@ public function backup()
$password = (string)$nextcloud->password;
$backupdir = (string)$nextcloud->backupdir;
$crypto_password = (string)$nextcloud->password_encryption;
+ $add_hostname = (string)$nextcloud->addhostname;
+
+ if ($add_hostname) {
+ $backupdir .= "/".gethostname()."/";
+ }
// Check if destination directory exists, create (full path) if not
try {
diff --git a/sysutils/nextcloud-backup/src/opnsense/mvc/app/models/OPNsense/Backup/NextcloudSettings.xml b/sysutils/nextcloud-backup/src/opnsense/mvc/app/models/OPNsense/Backup/NextcloudSettings.xml
index 10a12429e9..048ae22071 100644
--- a/sysutils/nextcloud-backup/src/opnsense/mvc/app/models/OPNsense/Backup/NextcloudSettings.xml
+++ b/sysutils/nextcloud-backup/src/opnsense/mvc/app/models/OPNsense/Backup/NextcloudSettings.xml
@@ -49,5 +49,9 @@
OPNsense-Backup
The Backup Directory can only consist of alphanumeric characters, dash, underscores and slash. No leading or trailing slash.
+
+ 0
+ Y
+