Commit Graph
12909 Commits
Author SHA1 Message Date
Kenneth Skovhede da32b8cbcb Fixed issue with B2 API calls 2025-12-16 21:23:24 +01:00
Kenneth Skovhede 734c761395 Fixed a warning 2025-12-16 21:22:50 +01:00
Kenneth Skovhede 2496591707 Fixed compile issue after rename 2025-12-16 20:57:09 +01:00
Kenneth Skovhede 0f81b42146 Add support for remote locks
This PR adds support for locking files if the backend supports it.

To activate locking, set the option `--file-lock-duration=30D` and the backup will lock the files.

If the database is rebuilt with the intention of continuing the backups, use the option `--repair-refresh-lock-info` which will update lock information in the database after recreating the database.

The locking works by asking the backend to lock files after a backup has completed.

The implementation keeps track of which files are currently assigned a lock and prevents attempting to delete the files that are currently locked.

Note that the bucket should not have a default lock policy as Duplicati needs to finish the backup before the locking is applied.

In this initial version, Azure Blob Storage, B2, S3 and iDrive are supported with locking.

The CLI is updated to allow setting locks on a specific version. The backend tool is updated to allow setting locks on specific files.
2025-12-14 17:17:48 +01:00
Kenneth SkovhedeandGitHub e5b72ef8e5 Merge pull request #6680 from duplicati/feature/add-internxt-s3
Added Internxt S3 hostnames
2025-12-12 16:07:45 +01:00
Kenneth SkovhedeandGitHub 9bd04575a3 Merge pull request #6681 from duplicati/release/canary-2.2.0.102
Version bump to v2.2.0.102-2.2.0.102_canary_2025-12-12
2025-12-12 13:23:02 +01:00
Kenneth Skovhede 507b5eed65 Version bump to v2.2.0.102-2.2.0.102_canary_2025-12-12
You can download this build from:

Binaries: https://updates.duplicati.com/canary/?version=2.2.0.102

Signature file: https://updates.duplicati.com/canary/duplicati-2.2.0.102_canary_2025-12-12.signatures.zip
v2.2.0.102_canary_2025-12-12 v2.2.0.102-2.2.0.102_canary_2025-12-12
2025-12-12 13:03:15 +01:00
Kenneth Skovhede 0e68f53473 Added Internxt S3 hostnames 2025-12-12 12:04:13 +01:00
Kenneth Skovhede c07416d06d Added build dependencies 2025-12-12 11:53:07 +01:00
Kenneth SkovhedeandGitHub 965618ba23 Merge pull request #6678 from duplicati/feature/duplicati-storage-backend
Duplicati storage server backend
2025-12-12 10:36:47 +01:00
Kenneth SkovhedeandGitHub a34b398545 Merge pull request #6679 from duplicati/feature/bump-ngclient-0.0.179
Bumped ngclient to 0.0.179
2025-12-12 10:36:25 +01:00
Kenneth SkovhedeandGitHub 1a90181b54 Merge pull request #6667 from duplicati/feature/vacuum-db-on-pwd-change
Call `VACUUM` on the DB on password change
2025-12-12 09:47:43 +01:00
Kenneth Skovhede 4f4e68cdc4 Updated tests to match new direct restore destination picker 2025-12-12 09:45:52 +01:00
Kenneth Skovhede 618d044c65 Bumped ngclient to 0.0.179 2025-12-12 09:34:09 +01:00
Kenneth Skovhede af680f9a39 Merge remote-tracking branch 'origin/HEAD' into feature/vacuum-db-on-pwd-change 2025-12-12 09:24:16 +01:00
Kenneth Skovhede d7ab1b03ac Merge remote-tracking branch 'origin/HEAD' into feature/duplicati-storage-backend
Streamlined the use of SharedRemoteOperation
2025-12-10 15:33:35 +01:00
Kenneth SkovhedeandGitHub c20ee4103b Merge pull request #6670 from duplicati/feature/support-api-key-with-filen
Add support for Filen.io API key
2025-12-10 15:07:02 +01:00
Kenneth Skovhede e968f81f26 Fixed issues with webmodule 2025-12-10 11:54:23 +01:00
Kenneth Skovhede 5cfa9724d7 Added support for loading remote backup names in Duplicati Storage 2025-12-09 21:17:01 +01:00
Kenneth SkovhedeandGitHub aa59d6b8ea Merge pull request #6672 from duplicati/feature/store-password-for-trayicon
Store password with TrayIcon
2025-12-09 08:48:37 +01:00
Kenneth Skovhede e5610b89a3 Fixed a visual startup issue on Linux 2025-12-08 13:37:54 +01:00
Kenneth Skovhede 588cec8aa6 More robustness for Pass 2025-12-08 12:05:24 +01:00
Kenneth Skovhede 8d7256f434 Added configureawait 2025-12-08 11:33:28 +01:00
Kenneth SkovhedeandGitHub 1453d7d32a Merge pull request #6673 from duplicati/feature/fix-macos-keychain
Fix macOS keychain
2025-12-08 10:29:46 +01:00
Kenneth SkovhedeandGitHub dac3d5b995 Merge pull request #6674 from duplicati/feature/auto-encrypt-settings-database
Auto encrypt settings db
2025-12-08 10:26:43 +01:00
Kenneth Skovhede 76dcf1c9ff Overwrite existing settings when saving 2025-12-07 22:57:25 +01:00
Kenneth Skovhede 08a93c2740 Automatically encrypt settings database if secret provider supports setting the password. 2025-12-07 22:55:31 +01:00
Kenneth Skovhede 925c87a3d6 Fix macOS keychain
This fixes the write support for storing secrets in the macOS KeyChain, such that each entry has a unique service name.
2025-12-07 22:31:44 +01:00
Kenneth Skovhede cf42426d1b Store password with TrayIcon
When using the TrayIcon with no hosted server (i.e., connecting to a running server), it is now possible to save the password and url in the secret provider.

There is a checkbox that allows saving the settings, and if checked, will save the settings to the secret provider (using the OS default if none is specifically provided).

This fixes #6379
2025-12-07 22:26:37 +01:00
Kenneth Skovhede c5ab7c778b Add support for Filen.io API key
This adds support for using an API key with Filen to work with an MFA protected account

The webmodule needs to be integrated into ngclient, so the user can simply click the button and get the api-key assigned.
2025-12-05 16:28:27 +01:00
Kenneth SkovhedeandGitHub c4e14d2d39 Merge pull request #6669 from duplicati/feature/add-password-input-dialog
Add password dialog
2025-12-05 15:25:35 +01:00
Kenneth SkovhedeandGitHub 85f323b2a1 Merge pull request #6668 from duplicati/feature/add-sftp-tests
Added SFTP tests to live backend tests
2025-12-05 15:24:03 +01:00
Kenneth SkovhedeandGitHub 179fd4da47 Merge pull request #6653 from duplicati/feature/secret-provider-write-support
Initial implementation of write-support for SecretProviders
2025-12-05 15:23:32 +01:00
Kenneth Skovhede 1ad1de65dd Fixed a failure in the HC Vault tests 2025-12-05 13:40:45 +01:00
Kenneth Skovhede 63789f9132 Add password dialog
Added a password dialog to get the server password if not provided on the commandline.

This also allows overriding the server url.

This is related to #6379
2025-12-05 13:22:13 +01:00
Kenneth Skovhede 833419588a Removed faulty test lookup 2025-12-05 13:15:51 +01:00
Kenneth Skovhede 95b98e20f5 Extended test coverage and fixed nullable in the tests 2025-12-05 10:24:16 +01:00
Kenneth Skovhede 4e8569b0eb Added SFTP tests to live backend tests 2025-12-04 19:48:44 +01:00
Kenneth Skovhede 723e05ea4c Call VACUUM on the DB on password change
This PR adds a VACUUM call to the database after encryption has changed. This is done to ensure any non-encrypted data is scrubbed and not present in unused pages after encryption is applied.
2025-12-04 16:27:31 +01:00
Kenneth Skovhede 6b3811b2f1 Added retry to handle eventual consistency when reading back values immediately after changes 2025-12-04 15:40:14 +01:00
Kenneth Skovhede 772005cf40 Merge remote-tracking branch 'origin/HEAD' into feature/duplicati-storage-backend 2025-12-04 15:30:45 +01:00
Kenneth SkovhedeandGitHub 9bd6a083dd Merge pull request #6663 from duplicati/feature/pre-guard-for-detached-files
Pre-execution check for RemoveRemoteVolumes
2025-12-03 14:57:44 +01:00
Kenneth SkovhedeandGitHub 465cc45693 Merge pull request #6665 from duplicati/feature/add-no-script-to-msi
Added NOSCRIPT feature to MSI
2025-12-03 14:56:32 +01:00
Kenneth Skovhede 59593dd0b9 Don't run tests when Docker is not available 2025-12-03 14:51:55 +01:00
Kenneth SkovhedeandGitHub e3da40aa69 Merge pull request #6662 from duplicati/feature/fix-wrong-option-type
Change the Windows Eventlog option type.
2025-12-03 14:19:36 +01:00
Kenneth SkovhedeandGitHub ebf0301539 Merge pull request #6664 from duplicati/feature/cleanup-playwright
Fixed an issue with playwright commandline args for the server
2025-12-03 14:19:09 +01:00
Kenneth Skovhede b0c172c646 Fixed an issue with upgrades where the installer would attempt to stop the service with the users permissions and not the elevated permissions.
This splits the stop into CheckService and StopService, so they can run in different contexts.
2025-12-03 14:14:51 +01:00
Kenneth Skovhede e51500ddd5 Added NOSCRIPT feature to MSI
This PR adds an MSI property that can be set with `NOSCRIPT=true`.

Setting the property will disable scripting in the MSI and thus prevent starting/stopping running services.

Also made the stop-service script non-critial, so it is possible to install the MSI even if the script fails to start or returns an error.
2025-12-03 13:00:34 +01:00
Kenneth Skovhede d585962f14 Fixed exception types 2025-12-03 11:38:24 +01:00
Kenneth Skovhede 2f9c5cfb47 Fixed an issue with playwright commandline args for the server 2025-12-03 11:35:54 +01:00