Commit Graph
6158 Commits
Author SHA1 Message Date
Kenneth Skovhede 588cec8aa6 More robustness for Pass 2025-12-08 12:05:24 +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 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 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 Skovhede 7322c46861 Pre-execution check for RemoveRemoteVolumes
This PR adds a check before entering the RemoveRemoteVolumes that checks if there are dangling FilesetEntry records when calling the function.

This makes it possible to figure out if the problem is created by the RemoveRemoteVolumes code, or an already existing problem in the database.

Also added a few tests that check that the condition is correctly detected.
2025-12-03 11:34:30 +01:00
Kenneth Skovhede f4df272a0b Change the Windows Eventlog option type.
Before this PR the Windows Eventlog option was incorrectly typed as a boolean but was intended to be the log name.

This was confusing and caused a warning in the log that the option was incorrectly parsed.
2025-12-03 10:34:58 +01:00
David Kartchner 5113d0e989 added an option to supply a new passphrase for reencryption with RecoveryTool recompress command 2025-12-02 02:24:06 -07:00
Kenneth Skovhede 61b7659a20 Better handling of empty file for file-based 2025-12-02 09:54:03 +01:00
Kenneth Skovhede 95a119547e Added support for Service Account Json for GCS secrets 2025-12-01 22:35:33 +01:00
Kenneth Skovhede c13c394801 Fixed issue with Azure secret provider not working without a bogus username 2025-12-01 22:07:07 +01:00
Kenneth Skovhede e093672e99 Fixed AWS secret provider 2025-12-01 22:05:35 +01:00
Kenneth SkovhedeandGitHub 7c6804aa52 Merge pull request #6651 from duplicati/feature/fix-aliyun-bug
Fixed a bug in AliyunOSS backend with timeouts
2025-12-01 20:36:25 +01:00
Kenneth SkovhedeandGitHub 0b1dded873 Merge pull request #6655 from duplicati/feature/fix-startup-delay
Fixed startup delay not working
2025-12-01 20:35:25 +01:00
Kenneth Skovhede 6a2af13a5c Fixed startup delay not working
This PR fixes a race during startup, where it was possible for the scheduler to start before the runner was paused, such that tasks could be started, even if the server was supposed to be paused.

This also fixes a more direct issue where the state was not updated during startup, so the UI could look paused, but the runner was active and accepting tasks.

This fixes #6634
2025-12-01 17:01:52 +01:00
Kenneth Skovhede 9fd9c425f7 Promoted notfound values to UserInformation exceptions 2025-12-01 15:39:21 +01:00
Kenneth Skovhede ead7b06c05 Better docs and output 2025-12-01 15:33:15 +01:00
Kenneth Skovhede 695d190b91 Updated to allow IsSupported to be async 2025-12-01 15:29:24 +01:00
Kenneth Skovhede 212d6b1148 Fixed getting a better default support result for pass
Better output on info command
Fixed delay on IsSupported for libSecret
2025-12-01 15:14:20 +01:00
Kenneth Skovhede 1053fa340a More work on default==login 2025-12-01 15:03:36 +01:00
Kenneth Skovhede 95da807beb Initialize default providers when returning
Fixed an issue with creating a collection.

Made the default collection an alias for "login" if the system does not do this automatically
2025-12-01 14:48:31 +01:00
Kenneth Skovhede 418636bc18 Don't report libsecret as supported if there is no display 2025-12-01 13:43:17 +01:00
Kenneth Skovhede b1ad696987 Added timeout detection on libSecret 2025-12-01 13:40:31 +01:00
Kenneth Skovhede 5f8a5bded6 Report supported status for secret provider 2025-12-01 13:38:41 +01:00
Kenneth Skovhede 8ac2273f21 Added OS markers to avoid accessing providers from unsupported OS.
Updated Pass provider to probe for pass via path searching.

Changed `IsSupported` to a method because it could take a while to evaluate
2025-12-01 13:21:44 +01:00
Kenneth Skovhede d6bde80062 Added support for automatically creating collections with libsecret 2025-12-01 12:46:02 +01:00
Kenneth Skovhede 3f6b1384d8 Updated SSH.NET to version 2025.1.0
This is related to #4675
2025-12-01 12:12:08 +01:00
Kenneth Skovhede 6d9826df06 Initial implementation of write-support for SecretProviders
This updates the MacOS secret provider to use PInvoke for a more stable API than the secrets tool that was used before.
2025-11-30 23:01:57 +01:00
Kenneth Skovhede ef649f3926 Updated reporting to include more details
This PR updates the reports sent to include a more detailed OS version string, similar to what is used by the usagereporter and systeminfo call.

It also reports parts of the destination hostname, if using S3 and the host is a known public cloud. This is done to avoid leaking internal hostnames or actual bucket names, but still provide some way to identify what storage service is used.
2025-11-28 12:04:47 +01:00
Kenneth Skovhede e9d1630751 Updated list of known hosts 2025-11-28 12:04:47 +01:00
Kenneth SkovhedeandGitHub c52d7decc6 Merge pull request #6648 from duplicati/feature/support-scheme-prefixed-hostnames-for-s3
Add support for scheme in url for S3
2025-11-27 15:45:44 +01:00
Kenneth SkovhedeandGitHub 3d7e848049 Merge pull request #6647 from duplicati/feature/support-exclude-attributes
Added support for exclusion of files based on xattrs
2025-11-27 15:45:19 +01:00
Kenneth Skovhede 756c98b5f5 Fixed a bug in AliyunOSS backend with timeouts 2025-11-27 15:44:01 +01:00
Kenneth Skovhede a9f3dc1137 Add support for scheme in url for S3
This adds support for supplying a url for the hostname which will also toggle the default SSL setting.

Removed providers MyCloudyPlace and dinCloud as they appear to no longer operate.
2025-11-21 11:23:27 +01:00
Kenneth Skovhede 5e9c608588 Added support for Rabata.io as an S3 provider 2025-11-21 11:01:38 +01:00
Kenneth Skovhede e1b9015a85 Added support for exclusion of files based on xattrs
This PR adds detection of exclusion attributes on files and folders. If a file or folder has an exclusion extended attribute, the file or folder is excluded from the backup.

The option `--disable-backup-exclusion-xattr` can be used to revert to the previous behavior where the xattrs were not checked.

This has the biggest impact on MacOS where it will not perform like other backup software and avoid files that are marked as excluded from backup.

This fixes #6393
2025-11-21 10:59:28 +01:00
Kenneth SkovhedeandGitHub b5397e72e1 Merge pull request #6632 from duplicati/feature/timeouts-for-azure-blob-storage
Added override for AzureBlobStorage's internal timeout handling.
2025-11-20 11:06:27 +01:00
Kenneth SkovhedeandGitHub 64727c2eaa Merge pull request #6638 from duplicati/feature/support-macos-photos-source
Added support for Photos on MacOS
2025-11-20 10:46:37 +01:00
Kenneth Skovhede 57b288f204 Bump Uplink.NET to latest
This is related to #5793
2025-11-20 08:58:59 +01:00
Kenneth Skovhede b7b7c4b9de Treat macOs and Linux distinctly for future use 2025-11-17 17:18:04 +01:00
Kenneth Skovhede 3b695cf065 Added support for Photos on MacOS
This PR adds detection of the MacOS Photos folder, and intercepts reads and replaces them with PhotoKit calls.
With this, it is possible to make backups of all MacOS Photos, even if they are not stored locally.

The previous versions would just make a backup of the on-disk structure, which was not guaranteed to contain all photos, but instead has various indexing for finding photos, and may contain some original photos.

The option `--photos-handling` controls how Duplicati now deals with the Photos folder. The options are:
- `LibraryOnly`: Same as before, just treat it as a folder
- `PhotosOnly`: Ignore the folder contents and just back up the actual photos
- `PhotosAndLibrary` (default): Make a backup of the photos and the library on-disk. This may cause images to be stored twice, but de-duplication will usually limit the storage increase.

The option `--photos-library-path` can be used to point to the on-disk Photo library that should be handled, in case the auto-detection does not pick it up. If this does not point to a valid Photoslibrary, or the path is not being backed up, no special handling will be done.

Note that the restore is not restoring into Photos itself, but instead restores into a sub-folder in the Photolibrary that is called `dup_backup`. To get the photos out after a restore, one needs to right-click the Photolibrary folder, and choose "Show package contents" and then the `dup_backup` folder is revealed.

This is done to keep all photos in the same folder, but avoid messing with the structure of the on-disk Photolibrary.

A future update could allow restoring back into Photos, and metadata is captured for each image to eventually allow this.

This fixes #6381
2025-11-17 17:12:10 +01:00
Kenneth SkovhedeandGitHub 2632ba8164 Merge pull request #6625 from duplicati/bugfix/restore-deadlock-timer-better-start
Bugfix/Better starting time for restore deadlock detection.
2025-11-15 11:04:25 +01:00
Kenneth Skovhede 757b335a87 Updated deps again 2025-11-14 17:26:32 +01:00
Kenneth Skovhede 5620c083d8 Fixed some 9.0.6 refs 2025-11-14 17:08:19 +01:00
Kenneth Skovhede 43d38efdd3 Fixed remaining warnings 2025-11-14 16:09:05 +01:00
Kenneth Skovhede 178440f869 Fixed a number of warnings 2025-11-14 16:00:06 +01:00
Kenneth Skovhede 46428936c4 Various updates after the upgrade 2025-11-14 15:45:19 +01:00
Kenneth Skovhede 1ea74a3c63 Updated to .NET10 2025-11-14 15:05:39 +01:00
Kenneth Skovhede da35b10455 Added override for AzureBlobStorage's internal timeout handling.
This is related to #6629
2025-11-13 11:58:13 +01:00
Kenneth SkovhedeandGitHub 2be28882c7 Merge branch 'master' into bugfix/restore-deadlock-timer-better-start 2025-11-10 19:44:44 +01:00