Commit Graph
68 Commits
Author SHA1 Message Date
Kenneth Skovhede a61639c841 Fixed logic for release builder
If the user supplies --resume-from-upload, this now implies that the build folder should not be deleted
2025-10-08 10:12:54 +02:00
Kenneth Skovhede 1c266110e0 Upgrade to latest libicu in Docker, and switch to libssl3t64 2025-08-19 11:02:31 +02:00
Kenneth Skovhede 094be4a9d8 Improve dependency on libicu
Since .NET dynamically loads libicu, it is not prone to ABI breakage and can load virtually any version.

However, there is no `Depends: libicu*` option in Debian packages, so we need the explicit package version. This is prone to breaking as new Debian version bump the version number.

This PR changes the `Depends:` to `Recommends:` so `libicu` is installed if possible, but does not prevent installation.

For cases where the is no `libicu` on the system, there is now a `preinst` script which will warn if the library is missing, but not prevent installation.

The warning should only show in Docker images or similar slim contexts, as `libicu` is otherwise installed with the base system.
2025-08-12 15:34:14 +02:00
Kenneth Skovhede cff8073b64 Fix after renames in SharpAESCrypt 2025-08-07 23:17:18 +02:00
Kenneth Skovhede 42a3d98c72 Added more preload 2025-07-11 22:14:59 +02:00
Kenneth Skovhede c3d539b721 Preload S3 libraries 2025-07-11 20:33:00 +02:00
Kenneth Skovhede 98deb8c576 Update support for VSS
This updates VSS to default use Vanara in favor of AlphaVSS which is no longer maintained.

The build for Vanara requires targeting `net8.0-windows7.0`, which will cause significant build overhead and complexity for cross platform builds.
To counter this, the setup is to have a single project, `Duplicati.Library.WindowsModules`, that is targeting `net8.0-windows7.0`.
The output from this project is then hoisted into the TrayIcon project for Windows builds so the files are available when debugging on Windows.
A top-level dummy executable project is added to ensure the project always builds.
The built modules are then loaded with reflection when requested.

With the use of Vanara there is now also support for using BackupRead to read files without making a VSS snapshot.
With BackupRead, it is possible to read locked files, but it still requires the SeBackupPrivilege as VSS does as well.

Unfortunately, the `vssapi.dll` file is not shipped for Arm64 on Windows, so even with Vanara this will not work, and only WMIC is supported on Arm64.
A workaround is to run Duplicati with x64 emulation if more advanced VSS features are needed (HyperV and MSSQL support).

This PR also updates options and filters out unsupported options for each operating system, so options that are not supported by the current OS are not reported and will give warnings if they are used, as opposed to just being ignored.

The release builder project has been updated to exclude the unused project, and purge unwanted outputs.
2025-07-01 16:32:19 +02:00
Kenneth Skovhede 8353ab2569 Added support for resuming builds when the date changes. 2025-05-30 07:49:24 +02:00
Kenneth Skovhede a0ecc5e05d Added a database downgrade tool 2025-04-24 16:36:14 +02:00
Kenneth Skovhede 5511ed6a46 Added support for additional libicu versions 2025-04-22 13:08:36 +02:00
Kenneth Skovhede e30fbf5613 Renamed build-only to compile-only.
More flexible setup for compile-only runs.
2025-04-14 22:14:06 +02:00
Kenneth Skovhede df939a4334 Add tests to build releases
This adds a CI test for building releases so we know in advance if package versions are out-of-order.

This also sets the primary project for CLI to the Server as that covers more than the CLI project.
2025-04-14 21:56:27 +02:00
Kenneth Skovhede 0fb8930329 Added elaborate version comparison to avoid shipping with wrong versions. 2025-04-14 17:37:51 +02:00
Kenneth Skovhede bd7a080d15 Reverted logic for building with temporary solutions as that can cause debug builds in the outputs and gives build warnings.
The logic is reverted to build each project into a build folder, and then copy the files into a shared common folder.

An additional check examines the log output and checks that there are no debug builds performed or used.
2025-04-13 23:32:39 +02:00
Kenneth SkovhedeandGitHub e614b08bb3 Merge pull request #5955 from duplicati/feature/alternate-source-provider
Alternate source provider
2025-02-28 10:07:53 +01:00
Kenneth Skovhede 1c38061050 Added support for authenticode signing with jsign and Yubikey / PIV. 2025-02-26 11:58:48 +01:00
Kenneth Skovhede 616d8b75a7 Simplified MacOS code signing 2025-02-25 16:43:28 +01:00
Kenneth Skovhede 66aa3cd9d6 Added support for profiles when building for different channels.
Changed the default config name to have a `duplicati` prefix.
2025-02-25 15:07:17 +01:00
Kenneth Skovhede 5a4fcaa6d7 Added tool to work with remote sources 2025-02-21 11:51:45 +01:00
Kenneth Skovhede 0260a061bb Made the synctool an executable 2025-02-10 21:37:52 +01:00
Kenneth Skovhede 91d0f08cb2 Added option to propagate releases.
When building a release, it is now possible to also offer that release in "lower" channels, meaning the stable release will show as an update to instances running beta or experimental.
2025-02-06 22:54:30 +01:00
Kenneth SkovhedeandGitHub fb8f5f4af7 Version bump to v2.1.0.105-2.1.0.105_canary_2025-01-07 (#5852)
* Version bump to v2.1.0.105-2.1.0.105_canary_2025-01-07

You can download this build from:

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

Signature file: https://updates.duplicati.com/canary/duplicati-2.1.0.105_canary_2025-01-07.signatures.zip

* Added retry to uploads

* Added support for resuming failed uploads
2025-01-07 17:55:07 +01:00
Kenneth SkovhedeandGitHub 9464caf622 Feature/update license 2025 (#5851)
* Fixed some minor whitespace issues

* Updated all copyright to 2025
2025-01-07 09:40:39 +01:00
Kenneth Skovhede d1418bb3e1 Implemented assertions to avoid sleep during build 2024-12-12 12:22:55 +01:00
Kenneth Skovhede f293b8de93 Fixed an issue with the release tagging 2024-12-06 09:20:46 +01:00
Kenneth Skovhede 345d800a34 Made a common error less noisy 2024-12-06 09:19:23 +01:00
Kenneth Skovhede aa53b157a5 Updated to use the correct name for changelog news. 2024-12-06 09:19:01 +01:00
Kenneth Skovhede 2a8f12890b Fixed compile issue 2024-11-21 20:27:07 +01:00
Kenneth Skovhede 56ff961b0d Removed the latest-v2.js as it is no longer used. 2024-11-20 17:25:03 +01:00
Kenneth Skovhede 24bc2defd0 Added support for the Agent MSI 2024-11-07 23:05:55 +01:00
Kenneth Skovhede 34d13a20e2 Initial version of the external secret provider 2024-10-24 16:06:59 +02:00
Kenneth Skovhede ce89366e17 Fixed code to patch index.html for SPA pages on build 2024-10-03 16:54:58 +02:00
Kenneth Skovhede ef0ca64d52 Merge remote-tracking branch 'origin/master' into feature/remote-control-support 2024-10-03 14:49:07 +02:00
Kenneth Skovhede c427d5a98b Improved cleanup of source folder after build 2024-10-03 08:25:41 +02:00
Kenneth Skovhede 48bd69cbde Injecting the NPM packages for builds 2024-10-02 22:52:40 +02:00
Kenneth Skovhede ecd22ac264 Added support for building agent packages.
Still lacking support for Windows MSI + MacOS pkg as they are currently tied to the TrayIcon being the base.
2024-09-18 15:29:52 +02:00
Kenneth Skovhede 669e90704d Initial work on supporting a secure remote control connection. 2024-09-18 11:07:59 +02:00
Kenneth Skovhede 4f332ea075 Added the missing duplicati-service binary 2024-08-28 00:15:53 +02:00
Kenneth Skovhede 735b4020eb Implemented duplicati-server-util for sending various commands to a running server.
This tool replaces `ConfigurationImporter` and partially replaces `duplicati_client`.
This fixes #5474
2024-08-26 20:00:13 +02:00
Kenneth Skovhede dab2b23332 Commit before reverting changelog file 2024-06-27 13:42:17 +02:00
Kenneth Skovhede 1fb46d7fd2 Prepare for canary build 2024-05-30 15:34:45 +02:00
Kenneth Skovhede 7f2703c5b6 Added option to toggle self-hosted builds 2024-05-27 12:21:19 +02:00
Kenneth Skovhede b3f0b1be81 Renamed binaires pre-install for all platforms.
Improved CLI builds, especially for RPM
Fixed permission issues in packages
2024-05-22 13:00:43 +02:00
Kenneth Skovhede 84d7a56ab1 Added executables for SharpAESCrypt and Snapshots 2024-05-21 09:54:01 +02:00
Kenneth Skovhede af75c2e6c9 Added uploads to store previous versions of the package lists during release 2024-05-17 12:19:55 +02:00
Kenneth Skovhede 226f200006 Inject the long-form version name as the version tag 2024-05-14 14:42:15 +02:00
Kenneth Skovhede f1fb843846 More dynamic handling of files modified during build 2024-05-04 08:13:54 +02:00
Kenneth Skovhede f8628d32dc Added libicu74 to list of icu versions 2024-05-03 10:49:15 +02:00
Kenneth SkovhedeandGitHub 8a39372c73 Merge pull request #5152 from duplicati/feature/update-manifest
Implemented the new manifest format
2024-04-29 10:57:09 +02:00
Kenneth Skovhede 60aacaa4bf Merge remote-tracking branch 'origin/master' into feature/move-installer-resources 2024-04-24 11:27:54 +02:00