From 5d1dbc5752cd01c1a80f949603a6ee51f552e4ee Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 27 Jan 2025 18:21:21 +0100 Subject: [PATCH 01/28] Use net8.0 for CLI --- cli/dll/Cyberduck.Cli.msbuildproj | 6 +++--- cli/dll/pom.xml | 11 +++++------ cli/src/main/csharp/duck.csproj | 6 +++--- cli/windows/pom.xml | 9 ++++----- 4 files changed, 15 insertions(+), 17 deletions(-) diff --git a/cli/dll/Cyberduck.Cli.msbuildproj b/cli/dll/Cyberduck.Cli.msbuildproj index 80b06bc152b..37aef258adb 100644 --- a/cli/dll/Cyberduck.Cli.msbuildproj +++ b/cli/dll/Cyberduck.Cli.msbuildproj @@ -1,16 +1,16 @@ - net472 + net8.0 - + - \ No newline at end of file + diff --git a/cli/dll/pom.xml b/cli/dll/pom.xml index ea26818272f..38005a74d9d 100644 --- a/cli/dll/pom.xml +++ b/cli/dll/pom.xml @@ -70,9 +70,8 @@ - net472 dll - ${project.build.directory}/net472/Cyberduck.Cli.dll + ${project.build.directory}/net8.0/Cyberduck.Cli.dll @@ -91,28 +90,28 @@ ch.cyberduck Cyberduck.Core - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Core.Native - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Protocols - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Cryptomator - net472 + net8.0 dll ${project.version} diff --git a/cli/src/main/csharp/duck.csproj b/cli/src/main/csharp/duck.csproj index f5c7bd33988..ad124442790 100644 --- a/cli/src/main/csharp/duck.csproj +++ b/cli/src/main/csharp/duck.csproj @@ -2,9 +2,9 @@ Exe - net472 - x64 + net8.0-windows10.0.22621.0 win-x64 + x64 @@ -41,7 +41,7 @@ - + \ No newline at end of file diff --git a/cli/windows/pom.xml b/cli/windows/pom.xml index b9c7f24fc3d..5f569fb84d7 100644 --- a/cli/windows/pom.xml +++ b/cli/windows/pom.xml @@ -83,14 +83,14 @@ ch.cyberduck Cyberduck.Core - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Core.Native - net472 + net8.0 dll ${project.version} runtime @@ -98,21 +98,20 @@ ch.cyberduck Cyberduck.Protocols - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Cryptomator - net472 + net8.0 dll ${project.version} ch.cyberduck Cyberduck.Cli - net472 dll ${project.version} From eab566d92083252285162273b47f24c8ba4d5748 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 28 Jan 2025 17:02:42 +0100 Subject: [PATCH 02/28] Preparing for CLI Wix v5 installer --- Cyberduck.sln | 70 +++++----- Packages.props | 1 + cli/src/main/csharp/duck.csproj | 5 +- .../Bootstrapper/duck.bootstrapper.wixproj | 22 +-- cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs | 132 +++--------------- cli/src/main/wix/Bundle/duck.bundle.wixproj | 103 +------------- global.json | 3 +- 7 files changed, 73 insertions(+), 263 deletions(-) diff --git a/Cyberduck.sln b/Cyberduck.sln index a7a00c5df4f..da76aadd47e 100644 --- a/Cyberduck.sln +++ b/Cyberduck.sln @@ -34,7 +34,7 @@ Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Cyberduck.Bundle", "windows EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "duck.bootstrapper", "cli\src\main\wix\Bootstrapper\duck.bootstrapper.wixproj", "{EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}" EndProject -Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "duck.bundle", "cli\src\main\wix\Bundle\duck.bundle.wixproj", "{F6975079-F730-4A31-9909-DE536E524764}" +Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "duck.bundle", "cli\src\main\wix\Bundle\duck.bundle.wixproj", "{F6975079-F730-4A31-9909-DE536E524764}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Core.Refresh", "core\native\refresh\src\main\csharp\Cyberduck.Core.Refresh.csproj", "{D1286C4A-9D6A-4904-B9AD-CB7688483EDB}" EndProject @@ -69,18 +69,6 @@ Global Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Debug|x64.ActiveCfg = Debug|Any CPU - {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Debug|x64.Build.0 = Debug|Any CPU - {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Release|x64.ActiveCfg = Release|Any CPU - {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Release|x64.Build.0 = Release|Any CPU - {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Debug|x64.ActiveCfg = Debug|Any CPU - {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Debug|x64.Build.0 = Debug|Any CPU - {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Release|x64.ActiveCfg = Release|Any CPU - {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Release|x64.Build.0 = Release|Any CPU - {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Debug|x64.ActiveCfg = Debug|Any CPU - {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Debug|x64.Build.0 = Debug|Any CPU - {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Release|x64.ActiveCfg = Release|Any CPU - {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Release|x64.Build.0 = Release|Any CPU {89D94AC6-3D04-4B67-A39B-C1DEFB8A1766}.Debug|x64.ActiveCfg = Debug|x64 {89D94AC6-3D04-4B67-A39B-C1DEFB8A1766}.Debug|x64.Build.0 = Debug|x64 {89D94AC6-3D04-4B67-A39B-C1DEFB8A1766}.Release|x64.ActiveCfg = Release|x64 @@ -101,22 +89,10 @@ Global {04AFCFBB-97D5-44EA-B087-F0CFAEB51E30}.Debug|x64.Build.0 = Debug|x64 {04AFCFBB-97D5-44EA-B087-F0CFAEB51E30}.Release|x64.ActiveCfg = Release|x64 {04AFCFBB-97D5-44EA-B087-F0CFAEB51E30}.Release|x64.Build.0 = Release|x64 - {9C7B827F-AE30-44C4-A210-E49DF883C720}.Debug|x64.ActiveCfg = Debug|Any CPU - {9C7B827F-AE30-44C4-A210-E49DF883C720}.Debug|x64.Build.0 = Debug|Any CPU - {9C7B827F-AE30-44C4-A210-E49DF883C720}.Release|x64.ActiveCfg = Release|Any CPU - {9C7B827F-AE30-44C4-A210-E49DF883C720}.Release|x64.Build.0 = Release|Any CPU - {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Debug|x64.ActiveCfg = Debug|Any CPU - {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Debug|x64.Build.0 = Debug|Any CPU - {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Release|x64.ActiveCfg = Release|Any CPU - {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Release|x64.Build.0 = Release|Any CPU {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Debug|x64.ActiveCfg = Debug|x64 {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Debug|x64.Build.0 = Debug|x64 {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Release|x64.ActiveCfg = Release|x64 {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Release|x64.Build.0 = Release|x64 - {C9B1C169-1354-4348-9938-7892399C6336}.Debug|x64.ActiveCfg = Debug|Any CPU - {C9B1C169-1354-4348-9938-7892399C6336}.Debug|x64.Build.0 = Debug|Any CPU - {C9B1C169-1354-4348-9938-7892399C6336}.Release|x64.ActiveCfg = Release|Any CPU - {C9B1C169-1354-4348-9938-7892399C6336}.Release|x64.Build.0 = Release|Any CPU {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Debug|x64.ActiveCfg = Debug|Win32 {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Debug|x64.Build.0 = Debug|Win32 {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Release|x64.ActiveCfg = Release|Win32 @@ -133,10 +109,10 @@ Global {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.Build.0 = Debug|x86 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.ActiveCfg = Release|x86 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.Build.0 = Release|x86 - {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.ActiveCfg = Debug|x86 - {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.Build.0 = Debug|x86 - {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.ActiveCfg = Release|x86 - {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.Build.0 = Release|x86 + {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.ActiveCfg = Debug|x64 + {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.Build.0 = Debug|x64 + {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.ActiveCfg = Release|x64 + {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.Build.0 = Release|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Debug|x64.ActiveCfg = Debug|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Debug|x64.Build.0 = Debug|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Release|x64.ActiveCfg = Release|x64 @@ -151,26 +127,44 @@ Global {55CDD736-9A8A-4091-AC99-60E2F9C73269}.Release|x64.ActiveCfg = Release|x64 {55CDD736-9A8A-4091-AC99-60E2F9C73269}.Release|x64.Build.0 = Release|x64 {55CDD736-9A8A-4091-AC99-60E2F9C73269}.Release|x64.Deploy.0 = Release|x64 + {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Debug|x64.ActiveCfg = Debug|Any CPU + {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Debug|x64.Build.0 = Debug|Any CPU + {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Release|x64.ActiveCfg = Release|Any CPU + {1B4DFDAD-C676-4338-B435-F2F62D79E096}.Release|x64.Build.0 = Release|Any CPU + {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Debug|x64.ActiveCfg = Debug|Any CPU + {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Debug|x64.Build.0 = Debug|Any CPU + {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Release|x64.ActiveCfg = Release|Any CPU + {B31E6C36-D710-443F-8ED7-16BE3BD51FC4}.Release|x64.Build.0 = Release|Any CPU + {C9B1C169-1354-4348-9938-7892399C6336}.Debug|x64.ActiveCfg = Debug|Any CPU + {C9B1C169-1354-4348-9938-7892399C6336}.Debug|x64.Build.0 = Debug|Any CPU + {C9B1C169-1354-4348-9938-7892399C6336}.Release|x64.ActiveCfg = Release|Any CPU + {C9B1C169-1354-4348-9938-7892399C6336}.Release|x64.Build.0 = Release|Any CPU + {9C7B827F-AE30-44C4-A210-E49DF883C720}.Debug|x64.ActiveCfg = Debug|Any CPU + {9C7B827F-AE30-44C4-A210-E49DF883C720}.Debug|x64.Build.0 = Debug|Any CPU + {9C7B827F-AE30-44C4-A210-E49DF883C720}.Release|x64.ActiveCfg = Release|Any CPU + {9C7B827F-AE30-44C4-A210-E49DF883C720}.Release|x64.Build.0 = Release|Any CPU + {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Debug|x64.ActiveCfg = Debug|Any CPU + {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Debug|x64.Build.0 = Debug|Any CPU + {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Release|x64.ActiveCfg = Release|Any CPU + {7EFC0398-8F4D-4850-BBE3-A0CC85410559}.Release|x64.Build.0 = Release|Any CPU + {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Debug|x64.ActiveCfg = Debug|Any CPU + {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Debug|x64.Build.0 = Debug|Any CPU + {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Release|x64.ActiveCfg = Release|Any CPU + {2D33598A-21A1-4117-82DC-250F4CE8D5E5}.Release|x64.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {1B4DFDAD-C676-4338-B435-F2F62D79E096} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} - {2D33598A-21A1-4117-82DC-250F4CE8D5E5} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} - {7EFC0398-8F4D-4850-BBE3-A0CC85410559} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {89D94AC6-3D04-4B67-A39B-C1DEFB8A1766} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {1926AB55-690C-4081-99D5-170847C206D9} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {581C7683-D22D-4346-B3BF-DC2936231C46} = {8B08EF96-10D6-4F35-94C1-986F9F0F1506} {2287E64E-3515-4324-9833-553348295C15} = {3FAE38FB-24D9-4F8C-81BA-68BAD19FC81D} {72B4BA09-65D8-4C49-930E-B14104B2AB1B} = {3FAE38FB-24D9-4F8C-81BA-68BAD19FC81D} {04AFCFBB-97D5-44EA-B087-F0CFAEB51E30} = {3FAE38FB-24D9-4F8C-81BA-68BAD19FC81D} - {9C7B827F-AE30-44C4-A210-E49DF883C720} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} - {B31E6C36-D710-443F-8ED7-16BE3BD51FC4} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {B5565834-1164-4858-AF50-AE89CFC9BDD2} = {8B08EF96-10D6-4F35-94C1-986F9F0F1506} {457F1D6D-8AEC-42E2-9211-2A8405C95019} = {0DF59FB4-AEA9-4213-A935-6DB851411B67} {7D32EE61-B6F0-4978-B500-45172B181283} = {0DF59FB4-AEA9-4213-A935-6DB851411B67} - {C9B1C169-1354-4348-9938-7892399C6336} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {FBA5EFE2-362B-4BAD-A748-3248F79468AC} = {7D32EE61-B6F0-4978-B500-45172B181283} {00858CE5-437F-46BE-8A2E-519B552DBF7D} = {7D32EE61-B6F0-4978-B500-45172B181283} {65AB4CE3-5AF4-411A-928C-7FFD250C6D85} = {7D32EE61-B6F0-4978-B500-45172B181283} @@ -179,6 +173,12 @@ Global {D1286C4A-9D6A-4904-B9AD-CB7688483EDB} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {ABB0D3AD-BCDA-4F73-88C3-C67B76AAB6FE} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} {55CDD736-9A8A-4091-AC99-60E2F9C73269} = {7D32EE61-B6F0-4978-B500-45172B181283} + {1B4DFDAD-C676-4338-B435-F2F62D79E096} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} + {B31E6C36-D710-443F-8ED7-16BE3BD51FC4} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} + {C9B1C169-1354-4348-9938-7892399C6336} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} + {9C7B827F-AE30-44C4-A210-E49DF883C720} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} + {7EFC0398-8F4D-4850-BBE3-A0CC85410559} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} + {2D33598A-21A1-4117-82DC-250F4CE8D5E5} = {72B4BA09-65D8-4C49-930E-B14104B2AB1B} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {289E6003-15D5-4377-ADA6-2E7093785BCD} diff --git a/Packages.props b/Packages.props index b2a59fca685..0ca713fed61 100644 --- a/Packages.props +++ b/Packages.props @@ -39,6 +39,7 @@ + diff --git a/cli/src/main/csharp/duck.csproj b/cli/src/main/csharp/duck.csproj index ad124442790..2faeebc2084 100644 --- a/cli/src/main/csharp/duck.csproj +++ b/cli/src/main/csharp/duck.csproj @@ -3,8 +3,9 @@ Exe net8.0-windows10.0.22621.0 - win-x64 - x64 + win-x64;win-arm64 + x64;arm64 + true diff --git a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj index 06f38763188..0518575c023 100644 --- a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj +++ b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj @@ -38,17 +38,6 @@ WixUtilExtension - - - CLI-WiX - {f6975079-f730-4a31-9909-de536e524764} - True - True - Binaries;Content;Satellites - INSTALLFOLDER - - - @@ -68,17 +57,12 @@ $(Win10SDKVerBinPath)x86\signtool.exe - - + - - + - - + \ No newline at end of file diff --git a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs index 33670d2310e..6f714a77d5a 100644 --- a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs +++ b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs @@ -1,111 +1,25 @@ - - - - - - + + - - - - - - - - - = 14393]]> - - - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + \ No newline at end of file diff --git a/cli/src/main/wix/Bundle/duck.bundle.wixproj b/cli/src/main/wix/Bundle/duck.bundle.wixproj index 5daa10a2cb2..c86b9414c7c 100644 --- a/cli/src/main/wix/Bundle/duck.bundle.wixproj +++ b/cli/src/main/wix/Bundle/duck.bundle.wixproj @@ -1,104 +1,13 @@ - - - + - 3.11 - f6975079-f730-4a31-9909-de536e524764 - 2.0 duck-$(Version) - Package - x64 - - CyberduckDir=$(CyberduckDir); - ProfilesDir=$(CyberduckDir)profiles\default\; - LicenseFile=$(CyberduckDir)i18n/src/main/resources/en.lproj/License.txt; - IkvmRuntimeDir=$(TargetBuildDir)\ikvm; - $(DefineConstants) - + x64;arm64 - - false - Debug;$(DefineConstants) - - - true - - - - - - - - Profiles - PROFILES - ProfileComponents - var.ProfilesDir - - - ikvm - INSTALLLOCATION - IkvmRuntime - var.IkvmRuntimeDir - - - - - - - - - - - CLI - {4b14000d-f435-4eca-a119-7aef03792dee} - True - True - Binaries;Content;Satellites - INSTALLFOLDER - + + - - $(WixExtDir)\WixNetFxExtension.dll - WixNetFxExtension - + - - - - - - - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0@InstallationFolder) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots@KitsRoot10) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)bin\ - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion).0\ - $(Win10SDKBinPath)$(Win10SDKVersion) - - - - - $(FrameworkSdkPath)bin\signtool.exe - $(WinSDK)\bin\x86\signtool.exe - $(Win10SDKVerBinPath)x86\signtool.exe - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/global.json b/global.json index dcd03a13278..906eed1f5c1 100644 --- a/global.json +++ b/global.json @@ -2,6 +2,7 @@ "msbuild-sdks": { "IKVM.NET.Sdk": "8.11.0-dev.283", "Microsoft.Build.NoTargets": "3.7.56", - "Microsoft.Build.Traversal": "4.1.0" + "Microsoft.Build.Traversal": "4.1.0", + "WixToolset.Sdk": "5.0.2" } } From 8522040d2efb4c0c12b5cdf397cd837e59f481d7 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 10 Mar 2025 10:04:28 +0100 Subject: [PATCH 03/28] Migrate to Directory.Packages.props --- Cyberduck.sln | 2 +- Directory.Packages.props | 55 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 Directory.Packages.props diff --git a/Cyberduck.sln b/Cyberduck.sln index da76aadd47e..c7c71f1e467 100644 --- a/Cyberduck.sln +++ b/Cyberduck.sln @@ -43,8 +43,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution .editorconfig = .editorconfig Directory.Build.props = Directory.Build.props Directory.Build.targets = Directory.Build.targets + Directory.Packages.props = Directory.Packages.props global.json = global.json - Packages.props = Packages.props EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "i18n-gen", "core\i18n-gen\i18n-gen.csproj", "{ABB0D3AD-BCDA-4F73-88C3-C67B76AAB6FE}" diff --git a/Directory.Packages.props b/Directory.Packages.props new file mode 100644 index 00000000000..ea253eb374e --- /dev/null +++ b/Directory.Packages.props @@ -0,0 +1,55 @@ + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @(PackageVersion->'%(Identity)'->Replace('.', '')->'Pkg%(Identity)Version=%(Version)') + + From dc2637396f54e1f0088aa8e2ff140a27980c74b6 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 10 Mar 2025 10:07:20 +0100 Subject: [PATCH 04/28] Prepare for publishing NuGet packages into Maven --- build.xml | 10 +++++++++- nuget.config | 3 +++ src/main/msbuild/NuGet-Unpack.ps1 | 33 +++++++++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 src/main/msbuild/NuGet-Unpack.ps1 diff --git a/build.xml b/build.xml index ed1113ebfb3..d2181607702 100644 --- a/build.xml +++ b/build.xml @@ -147,4 +147,12 @@ - + + + + + + + + + \ No newline at end of file diff --git a/nuget.config b/nuget.config index 2a93883a26e..27ec7ec52e3 100644 --- a/nuget.config +++ b/nuget.config @@ -7,6 +7,9 @@ + + + diff --git a/src/main/msbuild/NuGet-Unpack.ps1 b/src/main/msbuild/NuGet-Unpack.ps1 new file mode 100644 index 00000000000..f017c7a76cd --- /dev/null +++ b/src/main/msbuild/NuGet-Unpack.ps1 @@ -0,0 +1,33 @@ +[CmdletBinding()] +param ( + # Source path, where all .nupkgs are stored. + [Parameter()] + [string] + $PackagesListPath +) + +if (-not (Test-Path -Path $PackagesListPath -PathType Leaf)) { + return; +} + +$NugetParent = [System.IO.Path]::GetDirectoryName($PackagesListPath) +$CachePath = "$NugetParent\cache" +$PackagesPath = "$NugetParent\packages" + +foreach ($line in Get-Content $PackagesListPath) { + $line = $line.Trim() + if ($line -notmatch "\s*(?[^:]+):(?[^:]+):(?[^:]+):(?[^:]+):(?[^:]+)$") { + continue + } + + $artifact = $Matches["artifact"] + $version = $Matches["version"] + + $NupkgFile = "$CachePath\$artifact-$version.nupkg" + $NupkgZip = "$CachePath\$artifact-$version.zip" + $TargetDirectory = "$PackagesPath\$artifact\$version" + Copy-Item $NupkgFile $NupkgZip + Expand-Archive $NupkgZip $TargetDirectory -Force + Remove-Item $NupkgZip + Set-Content "$TargetDirectory\.nupkg.metadata" '{}' +} From c12d6076f46342986dd56d8a3ec6b5c1c15799bb Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 10 Mar 2025 11:41:13 +0100 Subject: [PATCH 05/28] Progress towards less house-keeping in projects --- .editorconfig | 2 +- src/main/msbuild/Cyberduck.Artifacts.targets | 12 +++++ src/main/msbuild/Cyberduck.Common.props | 40 +++++++++++++++ src/main/msbuild/Cyberduck.Common.targets | 21 ++++++++ src/main/msbuild/Cyberduck.Cpp.props | 6 --- src/main/msbuild/Cyberduck.Default.props | 26 ++++++++++ src/main/msbuild/Cyberduck.Default.targets | 26 ++++++++++ src/main/msbuild/Cyberduck.Java.props | 7 --- src/main/msbuild/Cyberduck.Net.props | 16 ++++++ src/main/msbuild/Cyberduck.Net.targets | 49 ++++++++++++++++++ src/main/msbuild/Cyberduck.NuGet.targets | 22 ++++++++ src/main/msbuild/Cyberduck.References.props | 41 +++++++++++++++ src/main/msbuild/Cyberduck.java.After.targets | 9 ++++ src/main/msbuild/Cyberduck.java.props | 28 ++++++++++ src/main/msbuild/Cyberduck.wxs.props | 5 ++ src/main/msbuild/Cyberduck.wxs.targets | 13 +++++ src/main/msbuild/Microsoft.WindowsSdk.props | 51 +++++++++++++++++++ src/template/msbuild/Version.props | 6 ++- 18 files changed, 365 insertions(+), 15 deletions(-) create mode 100644 src/main/msbuild/Cyberduck.Artifacts.targets create mode 100644 src/main/msbuild/Cyberduck.Common.props create mode 100644 src/main/msbuild/Cyberduck.Common.targets delete mode 100644 src/main/msbuild/Cyberduck.Cpp.props create mode 100644 src/main/msbuild/Cyberduck.Default.props create mode 100644 src/main/msbuild/Cyberduck.Default.targets delete mode 100644 src/main/msbuild/Cyberduck.Java.props create mode 100644 src/main/msbuild/Cyberduck.Net.props create mode 100644 src/main/msbuild/Cyberduck.Net.targets create mode 100644 src/main/msbuild/Cyberduck.NuGet.targets create mode 100644 src/main/msbuild/Cyberduck.References.props create mode 100644 src/main/msbuild/Cyberduck.java.After.targets create mode 100644 src/main/msbuild/Cyberduck.java.props create mode 100644 src/main/msbuild/Cyberduck.wxs.props create mode 100644 src/main/msbuild/Cyberduck.wxs.targets create mode 100644 src/main/msbuild/Microsoft.WindowsSdk.props diff --git a/.editorconfig b/.editorconfig index b01d449846a..467945db466 100644 --- a/.editorconfig +++ b/.editorconfig @@ -12,7 +12,7 @@ insert_final_newline = true charset = utf-8-bom # XML project files -[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,wixproj,msbuildproj}] +[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,wixproj}] indent_size = 2 # XML config files diff --git a/src/main/msbuild/Cyberduck.Artifacts.targets b/src/main/msbuild/Cyberduck.Artifacts.targets new file mode 100644 index 00000000000..a00243f72fc --- /dev/null +++ b/src/main/msbuild/Cyberduck.Artifacts.targets @@ -0,0 +1,12 @@ + + + + $(BaseOutputPath) + + + + $(BaseOutputPath) + $(BaseOutputPath)$(Platform)\ + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Common.props b/src/main/msbuild/Cyberduck.Common.props new file mode 100644 index 00000000000..e9ebf0061fa --- /dev/null +++ b/src/main/msbuild/Cyberduck.Common.props @@ -0,0 +1,40 @@ + + + + iterate GmbH + Libre FTP, SFTP, WebDAV, S3 and OpenStack Swift browser for Mac and Windows. + + + + $(ModulePath)target\ + $(TargetBuildDir)lib\ + $(TargetBuildDir)generated\msbuild\ + + false + $(TargetBuildDir) + + $(ArtifactsPath)obj\$(projectName)\ + $(ArtifactsPath) + + false + 12 + + $(TargetBuildDir).nuget\packages\;$(RestoreAdditionalProjectFallbackFolders) + + + + + + + + + + + + false + + + true + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Common.targets b/src/main/msbuild/Cyberduck.Common.targets new file mode 100644 index 00000000000..62ecf99f2f2 --- /dev/null +++ b/src/main/msbuild/Cyberduck.Common.targets @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + SignTool.exe sign /d "$(AppName)" /fd sha256 /tr http://timestamp.entrust.net/TSS/RFC3161sha2TS /td sha256 /a /sm /n "iterate GmbH" + PATH=@(SignToolPath, '%3B') + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Cpp.props b/src/main/msbuild/Cyberduck.Cpp.props deleted file mode 100644 index 96185344ba5..00000000000 --- a/src/main/msbuild/Cyberduck.Cpp.props +++ /dev/null @@ -1,6 +0,0 @@ - - - $(OutputPath) - $(IntermediateOutputPath) - - \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Default.props b/src/main/msbuild/Cyberduck.Default.props new file mode 100644 index 00000000000..c3a6698c975 --- /dev/null +++ b/src/main/msbuild/Cyberduck.Default.props @@ -0,0 +1,26 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Default.targets b/src/main/msbuild/Cyberduck.Default.targets new file mode 100644 index 00000000000..3119eecee41 --- /dev/null +++ b/src/main/msbuild/Cyberduck.Default.targets @@ -0,0 +1,26 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Java.props b/src/main/msbuild/Cyberduck.Java.props deleted file mode 100644 index 9c3429b2c88..00000000000 --- a/src/main/msbuild/Cyberduck.Java.props +++ /dev/null @@ -1,7 +0,0 @@ - - - <_DirectoryBuildJavaPropsFile>$([MSBuild]::GetPathOfFileAbove('Directory.Build.Java.props', '$(MSBuildProjectDirectory)')) - - - - \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Net.props b/src/main/msbuild/Cyberduck.Net.props new file mode 100644 index 00000000000..3f28fe2973f --- /dev/null +++ b/src/main/msbuild/Cyberduck.Net.props @@ -0,0 +1,16 @@ + + + + $(BuildSupportDir)Cyberduck.Artifacts.targets + + + + + + $(DefaultItemExcludes);**/*net472* + + + $(DefaultItemExcludes);**/*net8.0* + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.Net.targets b/src/main/msbuild/Cyberduck.Net.targets new file mode 100644 index 00000000000..00e21646a6c --- /dev/null +++ b/src/main/msbuild/Cyberduck.Net.targets @@ -0,0 +1,49 @@ + + + + $(LibDir);$(AssemblySearchPaths) + + + + net472 + net8.0 + + + $(LibDir)$(LibDirFramework)\;$(AssemblySearchPaths) + $(LibDir)$(LibDirFramework)\$(Platform)\;$(AssemblySearchpaths) + + + + + win-x86 + win-x64 + + + + + + + + SignTool.exe sign /d "$(AppName)" /fd sha256 /tr http://timestamp.entrust.net/TSS/RFC3161sha2TS /td sha256 /a /sm /n "iterate GmbH" + PATH=@(SignToolPath, '%3B') + + + + + + + $([MSBuild]::VersionLessThanOrEquals('$(NETCoreSdkVersion)', '6.0.301')) + $([MSBuild]::VersionGreaterThanOrEquals('$(NETCoreSdkVersion)', '6.0.401')) + SDKFix_RemoveDuplicateAnalyzers;$(CoreCompileDependsOn) + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.NuGet.targets b/src/main/msbuild/Cyberduck.NuGet.targets new file mode 100644 index 00000000000..4a7531a769e --- /dev/null +++ b/src/main/msbuild/Cyberduck.NuGet.targets @@ -0,0 +1,22 @@ + + + + $(GenerateNuspecDependsOn);CyberduckNuspecProperties + + + + + + $(PackageVersions); + id=$(PackageId); + version=$(PackageVersion); + authors=$(Authors); + company=$(Company); + description=$(Description); + buildDir=$(TargetBuildDir); + $(NuspecProperties) + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.References.props b/src/main/msbuild/Cyberduck.References.props new file mode 100644 index 00000000000..83c7da8e297 --- /dev/null +++ b/src/main/msbuild/Cyberduck.References.props @@ -0,0 +1,41 @@ + + + + + $(CyberduckDir)bonjour\dll\Cyberduck.Bonjour.proj + + + $(CyberduckDir)bonjour\src\main\csharp\Cyberduck.Bonjour.Native.csproj + + + $(CyberduckDir)cli\dll\Cyberduck.Cli.proj + + + $(CyberduckDir)core\dll\Cyberduck.Core.proj + + + $(CyberduckDir)core\src\main\csharp\Cyberduck.Core.Native.csproj + + + $(CyberduckDir)core\native\refresh\src\main\csharp\Cyberduck.Core.Refresh.csproj + + + $(CyberduckDir)cryptomator\dll\Cyberduck.Cryptomator.proj + + + $(CyberduckDir)importer\dll\Cyberduck.Importer.proj + + + $(CyberduckDir)protocols\dll\Cyberduck.Protocols.proj + + + + + + Cyberduck.%(Identity) + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.java.After.targets b/src/main/msbuild/Cyberduck.java.After.targets new file mode 100644 index 00000000000..21068becaaf --- /dev/null +++ b/src/main/msbuild/Cyberduck.java.After.targets @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.java.props b/src/main/msbuild/Cyberduck.java.props new file mode 100644 index 00000000000..f530088aa0b --- /dev/null +++ b/src/main/msbuild/Cyberduck.java.props @@ -0,0 +1,28 @@ + + + + ikvm.runtime.AppDomainAssemblyClassLoader + true + false + 1.8 + + + + + IKVM0100;IKVM0101;IKVM0105;IKVM0111;$(NoWarn) + $(MSBuildThisFileDirectory)Cyberduck.java.After.targets + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.wxs.props b/src/main/msbuild/Cyberduck.wxs.props new file mode 100644 index 00000000000..e5c4f6cf7ab --- /dev/null +++ b/src/main/msbuild/Cyberduck.wxs.props @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.wxs.targets b/src/main/msbuild/Cyberduck.wxs.targets new file mode 100644 index 00000000000..165ee016f26 --- /dev/null +++ b/src/main/msbuild/Cyberduck.wxs.targets @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Microsoft.WindowsSdk.props b/src/main/msbuild/Microsoft.WindowsSdk.props new file mode 100644 index 00000000000..b809e9c7b75 --- /dev/null +++ b/src/main/msbuild/Microsoft.WindowsSdk.props @@ -0,0 +1,51 @@ + + + + + + + Windows + $(VsInstallRoot)\ + $(VSInstallDir)Common7\IDE\VC\ + + + + + + + + + Native64Bit + + + + NativeARM64 + + + + Native32Bit + + + + + $(VCToolArchitecture) + + + + $(WindowsSDK_ExecutablePath_x64);$(WindowsSDK_ExecutablePath_x86) + + + + $(WindowsSDK_ExecutablePath_ARM64);$(WindowsSDK_ExecutablePath_x86) + + + + $(WindowsSDK_ExecutablePath_x86) + + + \ No newline at end of file diff --git a/src/template/msbuild/Version.props b/src/template/msbuild/Version.props index 9aa2ba2a632..12e454fa070 100644 --- a/src/template/msbuild/Version.props +++ b/src/template/msbuild/Version.props @@ -7,7 +7,11 @@ 0 $(AssemblyVersion).$(Revision) - $(FileVersion) + $(InformationalVersion) + + + + ${msbuild.sign} \ No newline at end of file From 537dcce1fb22d05719b53544b2f3f4a129d8022b Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 10 Mar 2025 14:33:37 +0100 Subject: [PATCH 06/28] Package NuGet --- Cyberduck.sln | 20 ++--- Directory.Build.Java.props | 22 ----- Directory.Build.props | 31 +------ Directory.Build.targets | 80 +------------------ Directory.Packages.props | 2 +- ...msbuildproj => Cyberduck.Bonjour.ikvmproj} | 4 - bonjour/dll/build.xml | 18 +++-- bonjour/dll/pom.xml | 12 ++- bonjour/native/Directory.Build.props | 11 +-- bonjour/native/build.xml | 9 +++ bonjour/native/pom.xml | 10 +-- .../nuget/Cyberduck.Bonjour.Native.nuspec | 20 +++++ bonjour/native/src/main/nuget/nuget.proj | 9 +++ .../main/{csharp => }/Directory.Build.props | 0 .../csharp/Cyberduck.Bonjour.Native.csproj | 1 - bonjour/src/main/csharp/nuget.proj | 8 ++ build.xml | 25 ++++-- ...Cli.msbuildproj => Cyberduck.Cli.ikvmproj} | 4 - cli/dll/build.xml | 18 +++-- cli/dll/pom.xml | 20 ++--- .../PublishProfiles/win-arm64.pubxml | 7 ++ .../Properties/PublishProfiles/win-x64.pubxml | 7 ++ cli/src/main/csharp/duck.csproj | 24 ++---- .../wix/Bootstrapper/Cyberduck CLI Bundle.wxs | 32 +++----- .../Bootstrapper/duck.bootstrapper.wixproj | 71 ++-------------- cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs | 4 +- cli/src/main/wix/Bundle/duck.bundle.wixproj | 15 ++-- cli/src/main/wix/Directory.Build.props | 18 ++--- cli/windows/Directory.Build.props | 1 - cli/windows/build.xml | 15 +--- cli/windows/{build.proj => dirs.proj} | 4 +- cli/windows/pom.xml | 20 ++--- ...re.msbuildproj => Cyberduck.Core.ikvmproj} | 2 - core/dll/Directory.Build.props | 10 +-- core/dll/build.xml | 14 +++- core/dll/pom.xml | 22 ++--- core/i18n-gen/i18n-gen.targets | 15 ++-- core/native/Directory.Build.props | 10 +-- core/native/build.xml | 20 +++-- core/native/{build.proj => dirs.proj} | 3 +- core/native/pom.xml | 24 ++---- core/native/refresh/Directory.Build.props | 11 +-- core/native/refresh/build.xml | 12 ++- core/native/refresh/dirs.proj | 6 ++ core/native/refresh/pom.xml | 22 +---- .../main/csharp/Cyberduck.Core.Refresh.csproj | 3 +- .../main/nuget/Cyberduck.Core.Refresh.nuspec | 34 ++++++++ .../Cyberduck.Core.Refresh.targets | 7 ++ core/native/refresh/src/main/nuget/nuget.proj | 8 ++ .../src/main/Cyberduck.Core.Native.nuspec | 34 ++++++++ core/native/src/main/Directory.Build.props | 20 +++++ .../Cyberduck.Core.Native.targets | 7 ++ core/native/src/main/nuget.proj | 8 ++ .../main/csharp/Cyberduck.Core.Native.csproj | 11 ++- core/src/main/csharp/Directory.Build.props | 5 +- ...ildproj => Cyberduck.Cryptomator.ikvmproj} | 4 - cryptomator/dll/build.xml | 18 +++-- cryptomator/dll/pom.xml | 22 +---- .../dll/Cyberduck.Importer.ikvmproj | 4 - importer/dll/build.xml | 14 +++- importer/dll/pom.xml | 22 +---- pom.xml | 77 ++++++++++++++++-- .../dll/Cyberduck.Protocols.ikvmproj | 6 +- protocols/dll/build.xml | 18 +++-- protocols/dll/pom.xml | 22 +---- src/main/msbuild/Cyberduck.Common.props | 17 +++- src/main/msbuild/Cyberduck.Common.targets | 2 +- src/main/msbuild/Cyberduck.References.props | 35 +++++--- src/main/msbuild/Cyberduck.wxs.props | 5 -- src/main/msbuild/Cyberduck.wxs.targets | 2 + windows/Directory.Build.props | 1 - windows/build.xml | 7 +- windows/{build.proj => dirs.proj} | 0 73 files changed, 574 insertions(+), 552 deletions(-) delete mode 100644 Directory.Build.Java.props rename bonjour/dll/{Cyberduck.Bonjour.msbuildproj => Cyberduck.Bonjour.ikvmproj} (85%) create mode 100644 bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec create mode 100644 bonjour/native/src/main/nuget/nuget.proj rename bonjour/src/main/{csharp => }/Directory.Build.props (100%) create mode 100644 bonjour/src/main/csharp/nuget.proj rename cli/dll/{Cyberduck.Cli.msbuildproj => Cyberduck.Cli.ikvmproj} (83%) create mode 100644 cli/src/main/csharp/Properties/PublishProfiles/win-arm64.pubxml create mode 100644 cli/src/main/csharp/Properties/PublishProfiles/win-x64.pubxml rename cli/windows/{build.proj => dirs.proj} (63%) rename core/dll/{Cyberduck.Core.msbuildproj => Cyberduck.Core.ikvmproj} (82%) rename core/native/{build.proj => dirs.proj} (74%) create mode 100644 core/native/refresh/dirs.proj create mode 100644 core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec create mode 100644 core/native/refresh/src/main/nuget/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Refresh.targets create mode 100644 core/native/refresh/src/main/nuget/nuget.proj create mode 100644 core/native/src/main/Cyberduck.Core.Native.nuspec create mode 100644 core/native/src/main/Directory.Build.props create mode 100644 core/native/src/main/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Native.targets create mode 100644 core/native/src/main/nuget.proj rename cryptomator/dll/{Cyberduck.Cryptomator.msbuildproj => Cyberduck.Cryptomator.ikvmproj} (83%) rename protocols/dll/Cyberduck.Protocols.msbuildproj => importer/dll/Cyberduck.Importer.ikvmproj (83%) rename importer/dll/Cyberduck.Importer.msbuildproj => protocols/dll/Cyberduck.Protocols.ikvmproj (80%) delete mode 100644 src/main/msbuild/Cyberduck.wxs.props rename windows/{build.proj => dirs.proj} (100%) diff --git a/Cyberduck.sln b/Cyberduck.sln index c7c71f1e467..6436ed00215 100644 --- a/Cyberduck.sln +++ b/Cyberduck.sln @@ -51,17 +51,17 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "i18n-gen", "core\i18n-gen\i EndProject Project("{C7167F0D-BC9F-4E6E-AFE1-012C56B48DB5}") = "package", "windows\src\main\package\package.wapproj", "{55CDD736-9A8A-4091-AC99-60E2F9C73269}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Core", "core\dll\Cyberduck.Core.msbuildproj", "{1B4DFDAD-C676-4338-B435-F2F62D79E096}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Core", "core\dll\Cyberduck.Core.ikvmproj", "{1B4DFDAD-C676-4338-B435-F2F62D79E096}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Bonjour", "bonjour\dll\Cyberduck.Bonjour.msbuildproj", "{B31E6C36-D710-443F-8ED7-16BE3BD51FC4}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Bonjour", "bonjour\dll\Cyberduck.Bonjour.ikvmproj", "{B31E6C36-D710-443F-8ED7-16BE3BD51FC4}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Importer", "importer\dll\Cyberduck.Importer.msbuildproj", "{C9B1C169-1354-4348-9938-7892399C6336}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Importer", "importer\dll\Cyberduck.Importer.ikvmproj", "{C9B1C169-1354-4348-9938-7892399C6336}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Protocols", "protocols\dll\Cyberduck.Protocols.msbuildproj", "{9C7B827F-AE30-44C4-A210-E49DF883C720}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Protocols", "protocols\dll\Cyberduck.Protocols.ikvmproj", "{9C7B827F-AE30-44C4-A210-E49DF883C720}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Cryptomator", "cryptomator\dll\Cyberduck.Cryptomator.msbuildproj", "{7EFC0398-8F4D-4850-BBE3-A0CC85410559}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Cryptomator", "cryptomator\dll\Cyberduck.Cryptomator.ikvmproj", "{7EFC0398-8F4D-4850-BBE3-A0CC85410559}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cyberduck.Cli", "cli\dll\Cyberduck.Cli.msbuildproj", "{2D33598A-21A1-4117-82DC-250F4CE8D5E5}" +Project("{DAEA77DE-8320-43BA-BA7C-EF5C12478AB5}") = "Cyberduck.Cli", "cli\dll\Cyberduck.Cli.ikvmproj", "{2D33598A-21A1-4117-82DC-250F4CE8D5E5}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -105,10 +105,10 @@ Global {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Debug|x64.Build.0 = Debug|x86 {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.ActiveCfg = Release|x86 {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.Build.0 = Release|x86 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.ActiveCfg = Debug|x86 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.Build.0 = Debug|x86 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.ActiveCfg = Release|x86 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.Build.0 = Release|x86 + {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.ActiveCfg = Debug|x64 + {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.Build.0 = Debug|x64 + {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.ActiveCfg = Release|x64 + {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.Build.0 = Release|x64 {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.ActiveCfg = Debug|x64 {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.Build.0 = Debug|x64 {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.ActiveCfg = Release|x64 diff --git a/Directory.Build.Java.props b/Directory.Build.Java.props deleted file mode 100644 index daf82155590..00000000000 --- a/Directory.Build.Java.props +++ /dev/null @@ -1,22 +0,0 @@ - - - - ikvm.runtime.AppDomainAssemblyClassLoader - false - 1.8 - - - - - IKVM0100;IKVM0101;IKVM0105;IKVM0111;$(NoWarn) - - - \ No newline at end of file diff --git a/Directory.Build.props b/Directory.Build.props index 18751344e85..7cd498cbc8f 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -16,38 +16,11 @@ - - iterate GmbH - Libre FTP, SFTP, WebDAV, S3 and OpenStack Swift browser for Mac and Windows. - - $(MSBuildThisFileDirectory) $(CyberduckDir)src\main\msbuild\ - $(ModulePath)target\ - $(TargetBuildDir)lib\ - $(TargetBuildDir)generated\msbuild\ - - $(TargetBuildDir) - false - - $(ArtifactsPath)obj\$(MSBuildProjectName)\ - $(ArtifactsPath) - $(BaseIntermediateOutputPath)$(Configuration)\ - $(BaseOutputPath) - - false - 12 - - false - - - - - - - + - \ No newline at end of file + diff --git a/Directory.Build.targets b/Directory.Build.targets index 7eecb31013b..bb8c9469a1c 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -16,84 +16,6 @@ - - - - $(LibDir);$(AssemblySearchPaths) - - - - net472 - net8.0 - $(LibDir)$(LibDirFramework)\;$(AssemblySearchPaths) - - - - $(DefaultItemExcludes);**/*net472* - - - $(DefaultItemExcludes);**/*net8.0* - - - - - $(CyberduckDir)bonjour\dll\Cyberduck.Bonjour.msbuildproj - - - $(CyberduckDir)bonjour\src\main\csharp\Cyberduck.Bonjour.Native.csproj - - - $(CyberduckDir)cli\dll\Cyberduck.Cli.msbuildproj - - - $(CyberduckDir)core\dll\Cyberduck.Core.msbuildproj - - - $(CyberduckDir)core\src\main\csharp\Cyberduck.Core.Native.csproj - - - $(CyberduckDir)core\native\refresh\src\main\csharp\Cyberduck.Core.Refresh.csproj - - - $(CyberduckDir)cryptomator\dll\Cyberduck.Cryptomator.msbuildproj - - - $(CyberduckDir)importer\dll\Cyberduck.Importer.msbuildproj - - - $(CyberduckDir)protocols\dll\Cyberduck.Protocols.msbuildproj - - - - - - Cyberduck.%(Identity) - - - \\?\ - - - - - - win-x86 - win-x64 - - - - - $([MSBuild]::VersionLessThanOrEquals('$(NETCoreSdkVersion)', '6.0.301')) - $([MSBuild]::VersionGreaterThanOrEquals('$(NETCoreSdkVersion)', '6.0.401')) - SDKFix_RemoveDuplicateAnalyzers;$(CoreCompileDependsOn) - - - - - - - - - - + \ No newline at end of file diff --git a/Directory.Packages.props b/Directory.Packages.props index ea253eb374e..b1a9795c8d3 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -50,6 +50,6 @@ - @(PackageVersion->'%(Identity)'->Replace('.', '')->'Pkg%(Identity)Version=%(Version)') + @(PackageVersion->'%(Identity)'->Replace('.', '_')->'Pkg%(Identity)Version=%(Version)') diff --git a/bonjour/dll/Cyberduck.Bonjour.msbuildproj b/bonjour/dll/Cyberduck.Bonjour.ikvmproj similarity index 85% rename from bonjour/dll/Cyberduck.Bonjour.msbuildproj rename to bonjour/dll/Cyberduck.Bonjour.ikvmproj index 4efb34d915e..b5119d86da3 100644 --- a/bonjour/dll/Cyberduck.Bonjour.msbuildproj +++ b/bonjour/dll/Cyberduck.Bonjour.ikvmproj @@ -1,5 +1,4 @@ - - + - + - - + + - + + + + + + + + + \ No newline at end of file diff --git a/bonjour/dll/pom.xml b/bonjour/dll/pom.xml index 3f0c7cc8797..bcff55db9a9 100644 --- a/bonjour/dll/pom.xml +++ b/bonjour/dll/pom.xml @@ -50,17 +50,16 @@ build-helper-maven-plugin - install-dll - verify + install-nupkg + package attach-artifact - net472 - dll - ${project.build.directory}/net472/Cyberduck.Bonjour.dll + nupkg + ${project.build.directory}/Cyberduck.Bonjour.${project.version}.nupkg @@ -76,9 +75,8 @@ ch.cyberduck Cyberduck.Core - net472 + nupkg ${project.version} - dll diff --git a/bonjour/native/Directory.Build.props b/bonjour/native/Directory.Build.props index ae8c28c65de..17adff8d341 100644 --- a/bonjour/native/Directory.Build.props +++ b/bonjour/native/Directory.Build.props @@ -15,10 +15,11 @@ - - $(MSBuildThisFileDirectory) - + + Cyberduck.Bonjour.Native + $(MSBuildThisFileDirectory) + - + - + \ No newline at end of file diff --git a/bonjour/native/build.xml b/bonjour/native/build.xml index fd59646a58f..6dfdf913695 100644 --- a/bonjour/native/build.xml +++ b/bonjour/native/build.xml @@ -37,4 +37,13 @@ + + + + + + + + + diff --git a/bonjour/native/pom.xml b/bonjour/native/pom.xml index 4d90379c658..b5960de96b6 100644 --- a/bonjour/native/pom.xml +++ b/bonjour/native/pom.xml @@ -28,7 +28,7 @@ build-helper-maven-plugin - install-dll + install-nupkg package attach-artifact @@ -36,9 +36,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Bonjour.Native.dll + nupkg + ${project.build.directory}/Cyberduck.Bonjour.Native.${project.version}.nupkg @@ -54,8 +53,7 @@ ch.cyberduck Cyberduck.Bonjour - net472 - dll + nupkg ${project.version} diff --git a/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec b/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec new file mode 100644 index 00000000000..8a3cd206e97 --- /dev/null +++ b/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec @@ -0,0 +1,20 @@ + + + + $id$ + $version$ + $description$ + $authors$ + + + + + + + + + + + + + \ No newline at end of file diff --git a/bonjour/native/src/main/nuget/nuget.proj b/bonjour/native/src/main/nuget/nuget.proj new file mode 100644 index 00000000000..f5a01498fce --- /dev/null +++ b/bonjour/native/src/main/nuget/nuget.proj @@ -0,0 +1,9 @@ + + + + netstandard2.0 + true + false + Cyberduck.Bonjour.Native.nuspec + + diff --git a/bonjour/src/main/csharp/Directory.Build.props b/bonjour/src/main/Directory.Build.props similarity index 100% rename from bonjour/src/main/csharp/Directory.Build.props rename to bonjour/src/main/Directory.Build.props diff --git a/bonjour/src/main/csharp/Cyberduck.Bonjour.Native.csproj b/bonjour/src/main/csharp/Cyberduck.Bonjour.Native.csproj index f26981c6860..62132827907 100644 --- a/bonjour/src/main/csharp/Cyberduck.Bonjour.Native.csproj +++ b/bonjour/src/main/csharp/Cyberduck.Bonjour.Native.csproj @@ -13,7 +13,6 @@ - diff --git a/bonjour/src/main/csharp/nuget.proj b/bonjour/src/main/csharp/nuget.proj new file mode 100644 index 00000000000..6b158b5b195 --- /dev/null +++ b/bonjour/src/main/csharp/nuget.proj @@ -0,0 +1,8 @@ + + + netstandard2.0 + true + false + Cyberduck.Core.Native.nuspec + + diff --git a/build.xml b/build.xml index d2181607702..f4c0e516f83 100644 --- a/build.xml +++ b/build.xml @@ -127,23 +127,34 @@ - + + + - + - + - + + + + + + + + - - + + - + diff --git a/cli/dll/Cyberduck.Cli.msbuildproj b/cli/dll/Cyberduck.Cli.ikvmproj similarity index 83% rename from cli/dll/Cyberduck.Cli.msbuildproj rename to cli/dll/Cyberduck.Cli.ikvmproj index 37aef258adb..5567cf24de4 100644 --- a/cli/dll/Cyberduck.Cli.msbuildproj +++ b/cli/dll/Cyberduck.Cli.ikvmproj @@ -1,16 +1,12 @@ - net8.0 - - - diff --git a/cli/dll/build.xml b/cli/dll/build.xml index 68d88d0cf85..d26f3e01fc0 100644 --- a/cli/dll/build.xml +++ b/cli/dll/build.xml @@ -16,17 +16,25 @@ --> - + - + - - + + - + + + + + + + + + \ No newline at end of file diff --git a/cli/dll/pom.xml b/cli/dll/pom.xml index 38005a74d9d..fcd9f978d57 100644 --- a/cli/dll/pom.xml +++ b/cli/dll/pom.xml @@ -70,8 +70,8 @@ - dll - ${project.build.directory}/net8.0/Cyberduck.Cli.dll + nupkg + ${project.build.directory}/Cyberduck.Cli.${project.version}.nupkg @@ -90,29 +90,19 @@ ch.cyberduck Cyberduck.Core - net8.0 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core.Native - net8.0 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Protocols - net8.0 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Cryptomator - net8.0 - dll + nupkg ${project.version} diff --git a/cli/src/main/csharp/Properties/PublishProfiles/win-arm64.pubxml b/cli/src/main/csharp/Properties/PublishProfiles/win-arm64.pubxml new file mode 100644 index 00000000000..b7028ce11ac --- /dev/null +++ b/cli/src/main/csharp/Properties/PublishProfiles/win-arm64.pubxml @@ -0,0 +1,7 @@ + + + + win-arm64 + true + + \ No newline at end of file diff --git a/cli/src/main/csharp/Properties/PublishProfiles/win-x64.pubxml b/cli/src/main/csharp/Properties/PublishProfiles/win-x64.pubxml new file mode 100644 index 00000000000..3bab3131c94 --- /dev/null +++ b/cli/src/main/csharp/Properties/PublishProfiles/win-x64.pubxml @@ -0,0 +1,7 @@ + + + + win-x64 + true + + \ No newline at end of file diff --git a/cli/src/main/csharp/duck.csproj b/cli/src/main/csharp/duck.csproj index 2faeebc2084..5f4c2c89973 100644 --- a/cli/src/main/csharp/duck.csproj +++ b/cli/src/main/csharp/duck.csproj @@ -5,7 +5,7 @@ net8.0-windows10.0.22621.0 win-x64;win-arm64 x64;arm64 - true + win-$(Platform) @@ -13,18 +13,9 @@ - - $(Filename)$(Extension) - PreserveNewest - - - $(Filename)$(Extension) - PreserveNewest - - - PreserveNewest - $(Filename)$(Extension) - + + + bookmarks/%(Filename)%(Extension) @@ -40,9 +31,4 @@ - - - - - - \ No newline at end of file + diff --git a/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs b/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs index a82786ba8aa..2c445637adb 100644 --- a/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs +++ b/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs @@ -1,29 +1,15 @@ - + + + + + + + - - - - - - - - - - - - = v10.0 AND CBNumber >= 14393]]> - + - - - + diff --git a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj index 0518575c023..8dffba80524 100644 --- a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj +++ b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj @@ -1,74 +1,15 @@ - - - + - 3.14 - ef87de0e-bc36-4d3c-8852-c8ad11d01f04 - 2.0 - duck-$(Version) + duck-$(FileVersion)-$(Platform) + x64;arm64 Bundle CyberduckDir=$(CyberduckDir);SetupDir=$(SetupDir) - - false - Debug;$(DefineConstants) - - - true - - + + - - - - - - - $(WixExtDir)\WixNetFxExtension.dll - WixNetFxExtension - - - $(WixExtDir)\WixBalExtension.dll - WixBalExtension - - - $(WixExtDir)\WixUtilExtension.dll - WixUtilExtension - + - - - - - - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0@InstallationFolder) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots@KitsRoot10) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)bin\ - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion).0\ - $(Win10SDKBinPath)$(Win10SDKVersion) - - - - - $(FrameworkSdkPath)bin\signtool.exe - $(WinSDK)\bin\x86\signtool.exe - $(Win10SDKVerBinPath)x86\signtool.exe - - - - - - - - - \ No newline at end of file diff --git a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs index 6f714a77d5a..2b11b913413 100644 --- a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs +++ b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs @@ -1,14 +1,14 @@ - + - duck-$(Version) + duck-$(FileVersion)-$(Platform) x64;arm64 + + ProductVersion=$(FileVersion) + + + + false + + + true - - - - diff --git a/cli/src/main/wix/Directory.Build.props b/cli/src/main/wix/Directory.Build.props index dd4d65e2292..41cf1d2014a 100644 --- a/cli/src/main/wix/Directory.Build.props +++ b/cli/src/main/wix/Directory.Build.props @@ -15,14 +15,14 @@ - - <_CliBasePath>$([MSBuild]::GetDirectoryNameOfFileAbove('$(MSBuildThisFileDirectory)../', 'Directory.Build.props'))/ - - + + <_CliBasePath>$([MSBuild]::GetDirectoryNameOfFileAbove('$(MSBuildThisFileDirectory)../', 'Directory.Build.props'))/ + + - - $(OutputPath)$(Configuration) - $(CyberduckDir)setup\wix\ - + + $(BaseOutputPath)$(Configuration)\ + $(CyberduckDir)setup\wix\ + - + \ No newline at end of file diff --git a/cli/windows/Directory.Build.props b/cli/windows/Directory.Build.props index 345496fbdd4..446ced77aa6 100644 --- a/cli/windows/Directory.Build.props +++ b/cli/windows/Directory.Build.props @@ -17,7 +17,6 @@ $(MSBuildThisFileDirectory) - false diff --git a/cli/windows/build.xml b/cli/windows/build.xml index 294b61d3c35..8c2d98d1fcb 100644 --- a/cli/windows/build.xml +++ b/cli/windows/build.xml @@ -23,7 +23,7 @@ - + @@ -32,7 +32,7 @@ - + @@ -40,19 +40,12 @@ - - - - - - - + + - - diff --git a/cli/windows/build.proj b/cli/windows/dirs.proj similarity index 63% rename from cli/windows/build.proj rename to cli/windows/dirs.proj index 9d4e4035e57..c498d1a49d5 100644 --- a/cli/windows/build.proj +++ b/cli/windows/dirs.proj @@ -2,10 +2,12 @@ + - + + diff --git a/cli/windows/pom.xml b/cli/windows/pom.xml index 5f569fb84d7..4b0bbe4830d 100644 --- a/cli/windows/pom.xml +++ b/cli/windows/pom.xml @@ -72,6 +72,10 @@ + + pack-nupkg + none + @@ -83,39 +87,35 @@ ch.cyberduck Cyberduck.Core - net8.0 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Core.Native - net8.0 - dll + nupkg ${project.version} runtime ch.cyberduck Cyberduck.Protocols - net8.0 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Cryptomator - net8.0 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Cli - dll + nupkg ${project.version} - + \ No newline at end of file diff --git a/core/dll/Cyberduck.Core.msbuildproj b/core/dll/Cyberduck.Core.ikvmproj similarity index 82% rename from core/dll/Cyberduck.Core.msbuildproj rename to core/dll/Cyberduck.Core.ikvmproj index 39d59a7e8fb..9a5bcebf585 100644 --- a/core/dll/Cyberduck.Core.msbuildproj +++ b/core/dll/Cyberduck.Core.ikvmproj @@ -4,8 +4,6 @@ net472;net8.0 - - diff --git a/core/dll/Directory.Build.props b/core/dll/Directory.Build.props index 415d5cdf9b5..08574032576 100644 --- a/core/dll/Directory.Build.props +++ b/core/dll/Directory.Build.props @@ -15,10 +15,10 @@ - - $(MSBuildThisFileDirectory) - + + $(MSBuildThisFileDirectory) + - + - + \ No newline at end of file diff --git a/core/dll/build.xml b/core/dll/build.xml index c49487124ed..3d0f208acbb 100644 --- a/core/dll/build.xml +++ b/core/dll/build.xml @@ -24,13 +24,21 @@ - + - - + + + + + + + + + + diff --git a/core/dll/pom.xml b/core/dll/pom.xml index 789b49dcfde..8df60430c30 100644 --- a/core/dll/pom.xml +++ b/core/dll/pom.xml @@ -50,22 +50,16 @@ build-helper-maven-plugin - install-dll - verify + install-nupkg + package attach-artifact - net472 - dll - ${project.build.directory}/net472/Cyberduck.Core.dll - - - net8.0 - dll - ${project.build.directory}/net8.0/Cyberduck.Core.dll + nupkg + ${project.build.directory}/Cyberduck.Core.${project.version}.nupkg @@ -102,6 +96,14 @@ ${jna-version} runtime + + net.java.dev.jna + jnidispatch + aarch64 + dll + ${jna-version} + runtime + diff --git a/core/i18n-gen/i18n-gen.targets b/core/i18n-gen/i18n-gen.targets index ff9b37d2bfa..a3065ae2dfd 100644 --- a/core/i18n-gen/i18n-gen.targets +++ b/core/i18n-gen/i18n-gen.targets @@ -4,15 +4,16 @@ + AssemblyFile="$(i18n_gen_dll)" + TaskFactory="TaskHostFactory" /> + AssemblyFile="$(i18n_gen_dll)" + TaskFactory="TaskHostFactory" /> + OutputItemType="Analyzer" + ReferenceOutputAssembly="False" + SetPlatform="Platform=" /> - + \ No newline at end of file diff --git a/core/native/Directory.Build.props b/core/native/Directory.Build.props index 415d5cdf9b5..08574032576 100644 --- a/core/native/Directory.Build.props +++ b/core/native/Directory.Build.props @@ -15,10 +15,10 @@ - - $(MSBuildThisFileDirectory) - + + $(MSBuildThisFileDirectory) + - + - + \ No newline at end of file diff --git a/core/native/build.xml b/core/native/build.xml index 914ac71531e..b216c68a96f 100644 --- a/core/native/build.xml +++ b/core/native/build.xml @@ -21,27 +21,33 @@ --> - + - - + + - - + + + + + + + + - + - + \ No newline at end of file diff --git a/core/native/build.proj b/core/native/dirs.proj similarity index 74% rename from core/native/build.proj rename to core/native/dirs.proj index 0f8972db81a..9ee449db01a 100644 --- a/core/native/build.proj +++ b/core/native/dirs.proj @@ -2,6 +2,7 @@ + - + \ No newline at end of file diff --git a/core/native/pom.xml b/core/native/pom.xml index 2f6e4533181..5cb612c9f4e 100644 --- a/core/native/pom.xml +++ b/core/native/pom.xml @@ -32,7 +32,7 @@ build-helper-maven-plugin - install-dll + install-nupkg package attach-artifact @@ -40,14 +40,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Core.Native.dll - - - net8.0 - dll - ${project.build.directory}/net8.0-windows10.0.22621.0/Cyberduck.Core.Native.dll + nupkg + ${project.build.directory}/Cyberduck.Core.Native.${project.version}.nupkg @@ -83,15 +77,7 @@ ch.cyberduck Cyberduck.Core - net472 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core - net8.0 - dll + nupkg ${project.version} @@ -108,4 +94,4 @@ test - + \ No newline at end of file diff --git a/core/native/refresh/Directory.Build.props b/core/native/refresh/Directory.Build.props index 415d5cdf9b5..05a101d4b82 100644 --- a/core/native/refresh/Directory.Build.props +++ b/core/native/refresh/Directory.Build.props @@ -15,10 +15,11 @@ - - $(MSBuildThisFileDirectory) - + + Cyberduck.Core.Refresh + $(MSBuildThisFileDirectory) + - + - + \ No newline at end of file diff --git a/core/native/refresh/build.xml b/core/native/refresh/build.xml index 90d718df519..8e018ae69c5 100644 --- a/core/native/refresh/build.xml +++ b/core/native/refresh/build.xml @@ -24,18 +24,24 @@ - + - + - + + + + + + + diff --git a/core/native/refresh/dirs.proj b/core/native/refresh/dirs.proj new file mode 100644 index 00000000000..14980442909 --- /dev/null +++ b/core/native/refresh/dirs.proj @@ -0,0 +1,6 @@ + + + + + + diff --git a/core/native/refresh/pom.xml b/core/native/refresh/pom.xml index 9228acedf7c..26a47b8d7d8 100644 --- a/core/native/refresh/pom.xml +++ b/core/native/refresh/pom.xml @@ -28,7 +28,7 @@ build-helper-maven-plugin - install-dll + install-nupkg package attach-artifact @@ -36,14 +36,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Core.Refresh.dll - - - net8.0 - dll - ${project.build.directory}/net8.0-windows10.0.22621.0/Cyberduck.Core.Refresh.dll + nupkg + ${project.build.directory}/Cyberduck.Core.Refresh.${project.version}.nupkg @@ -59,15 +53,7 @@ ch.cyberduck Cyberduck.Core.Native - net472 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core.Native - net8.0 - dll + nupkg ${project.version} diff --git a/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj b/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj index b2429b5cd3a..f9afe529903 100644 --- a/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj +++ b/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj @@ -18,7 +18,7 @@ net472;net8.0-windows10.0.22621.0 10.0.14393.0 - x64 + x64;arm64 12.0 true true @@ -31,7 +31,6 @@ - all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec b/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec new file mode 100644 index 00000000000..7c5e02ba937 --- /dev/null +++ b/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec @@ -0,0 +1,34 @@ + + + + $id$ + $version$ + $description$ + $authors$ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/native/refresh/src/main/nuget/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Refresh.targets b/core/native/refresh/src/main/nuget/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Refresh.targets new file mode 100644 index 00000000000..a6c412e656a --- /dev/null +++ b/core/native/refresh/src/main/nuget/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Refresh.targets @@ -0,0 +1,7 @@ + + + + $(MSBuildThisFileDirectory)../../lib/net8.0-windows10.0.22621.0/win-$(Platform)/Cyberduck.Core.Refresh.dll + + + \ No newline at end of file diff --git a/core/native/refresh/src/main/nuget/nuget.proj b/core/native/refresh/src/main/nuget/nuget.proj new file mode 100644 index 00000000000..b67ea958fcf --- /dev/null +++ b/core/native/refresh/src/main/nuget/nuget.proj @@ -0,0 +1,8 @@ + + + netstandard2.0 + true + false + Cyberduck.Core.Refresh.nuspec + + diff --git a/core/native/src/main/Cyberduck.Core.Native.nuspec b/core/native/src/main/Cyberduck.Core.Native.nuspec new file mode 100644 index 00000000000..0a672abe1e8 --- /dev/null +++ b/core/native/src/main/Cyberduck.Core.Native.nuspec @@ -0,0 +1,34 @@ + + + + $id$ + $version$ + $description$ + $authors$ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/native/src/main/Directory.Build.props b/core/native/src/main/Directory.Build.props new file mode 100644 index 00000000000..f09eb05b706 --- /dev/null +++ b/core/native/src/main/Directory.Build.props @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/core/native/src/main/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Native.targets b/core/native/src/main/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Native.targets new file mode 100644 index 00000000000..bc0498253ee --- /dev/null +++ b/core/native/src/main/build/net8.0-windows10.0.22621.0/Cyberduck.Core.Native.targets @@ -0,0 +1,7 @@ + + + + $(MSBuildThisFileDirectory)../../lib/net8.0-windows10.0.22621.0/win-$(Platform)/Cyberduck.Core.Native.dll + + + \ No newline at end of file diff --git a/core/native/src/main/nuget.proj b/core/native/src/main/nuget.proj new file mode 100644 index 00000000000..6b158b5b195 --- /dev/null +++ b/core/native/src/main/nuget.proj @@ -0,0 +1,8 @@ + + + netstandard2.0 + true + false + Cyberduck.Core.Native.nuspec + + diff --git a/core/src/main/csharp/Cyberduck.Core.Native.csproj b/core/src/main/csharp/Cyberduck.Core.Native.csproj index d8948205cd8..0b2aa81ced9 100644 --- a/core/src/main/csharp/Cyberduck.Core.Native.csproj +++ b/core/src/main/csharp/Cyberduck.Core.Native.csproj @@ -15,10 +15,16 @@ + + net472 + + + x64 + - net472;net8.0-windows10.0.22621.0 + net472;net8.0-windows10.0.22621.0 + x64;arm64 10.0.14393.0 - x64 true @@ -27,7 +33,6 @@ - all diff --git a/core/src/main/csharp/Directory.Build.props b/core/src/main/csharp/Directory.Build.props index 4a975e0eebb..64e75b0a913 100644 --- a/core/src/main/csharp/Directory.Build.props +++ b/core/src/main/csharp/Directory.Build.props @@ -16,9 +16,10 @@ + Cyberduck.Core.Native <_CoreBasePath>$([MSBuild]::GetDirectoryNameOfFileAbove('$(MSBuildThisFileDirectory)../', 'Directory.Build.props'))/ - - + + \ No newline at end of file diff --git a/cryptomator/dll/Cyberduck.Cryptomator.msbuildproj b/cryptomator/dll/Cyberduck.Cryptomator.ikvmproj similarity index 83% rename from cryptomator/dll/Cyberduck.Cryptomator.msbuildproj rename to cryptomator/dll/Cyberduck.Cryptomator.ikvmproj index 8622a7d14bd..9ed7fe53f7b 100644 --- a/cryptomator/dll/Cyberduck.Cryptomator.msbuildproj +++ b/cryptomator/dll/Cyberduck.Cryptomator.ikvmproj @@ -1,16 +1,12 @@ - net472;net8.0 - - - \ No newline at end of file diff --git a/cryptomator/dll/build.xml b/cryptomator/dll/build.xml index f5d9e5435cf..da5be489dd3 100644 --- a/cryptomator/dll/build.xml +++ b/cryptomator/dll/build.xml @@ -15,18 +15,26 @@ --> - + - + - - + + - + + + + + + + + + \ No newline at end of file diff --git a/cryptomator/dll/pom.xml b/cryptomator/dll/pom.xml index 7744f726867..11b2d6059b6 100644 --- a/cryptomator/dll/pom.xml +++ b/cryptomator/dll/pom.xml @@ -62,7 +62,7 @@ build-helper-maven-plugin - install-dll + install-nupkg verify attach-artifact @@ -70,14 +70,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Cryptomator.dll - - - net8.0 - dll - ${project.build.directory}/net8.0/Cyberduck.Cryptomator.dll + nupkg + ${project.build.directory}/Cyberduck.Cryptomator.${project.version}.nupkg @@ -96,15 +90,7 @@ ch.cyberduck Cyberduck.Core - net472 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core - net8.0 - dll + nupkg ${project.version} diff --git a/protocols/dll/Cyberduck.Protocols.msbuildproj b/importer/dll/Cyberduck.Importer.ikvmproj similarity index 83% rename from protocols/dll/Cyberduck.Protocols.msbuildproj rename to importer/dll/Cyberduck.Importer.ikvmproj index 8622a7d14bd..9ed7fe53f7b 100644 --- a/protocols/dll/Cyberduck.Protocols.msbuildproj +++ b/importer/dll/Cyberduck.Importer.ikvmproj @@ -1,16 +1,12 @@ - net472;net8.0 - - - \ No newline at end of file diff --git a/importer/dll/build.xml b/importer/dll/build.xml index 547ea69d8d0..2a108355914 100644 --- a/importer/dll/build.xml +++ b/importer/dll/build.xml @@ -24,13 +24,21 @@ - + - - + + + + + + + + + + diff --git a/importer/dll/pom.xml b/importer/dll/pom.xml index 46f30b66102..25b3655a1e4 100644 --- a/importer/dll/pom.xml +++ b/importer/dll/pom.xml @@ -47,7 +47,7 @@ build-helper-maven-plugin - install-dll + install-nupkg verify attach-artifact @@ -55,14 +55,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Importer.dll - - - net8.0 - dll - ${project.build.directory}/net8.0/Cyberduck.Importer.dll + nupkg + ${project.build.directory}/Cyberduck.Importer.${project.version}.nupkg @@ -81,15 +75,7 @@ ch.cyberduck Cyberduck.Core - net472 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core - net8.0 - dll + nupkg ${project.version} diff --git a/pom.xml b/pom.xml index fc309eab5d8..f9590696aaa 100644 --- a/pom.xml +++ b/pom.xml @@ -623,35 +623,35 @@ ${project.build.directory}/lib - net472,net8.0 + net472,net8.0,net8.0-x64,net8.0-arm64,aarch64,x86_64 dll true true - copy-dependencies-dll-net472-target + copy-dependencies-dll-x64-target generate-sources copy-dependencies - ${project.build.directory}/lib/net472 - net472 + ${project.build.directory}/lib/x64 + x86_64 dll true true - copy-dependencies-dll-net8.0-target + copy-dependencies-dll-arm64-target generate-sources copy-dependencies - ${project.build.directory}/lib/net8.0 - net8.0 + ${project.build.directory}/lib/arm64 + aarch64 dll true true @@ -1052,6 +1052,19 @@ maven-dependency-plugin + + generate-nupkgs + generate-sources + + copy-dependencies + collect + + + nupkg + ${project.build.directory}/.nuget/packages.list + ${project.build.directory}/.nuget/cache + + copy-dependencies-jar-target @@ -1062,9 +1075,57 @@ + + maven-antrun-plugin + + + unpack-nupkg + process-sources + + run + + + + + + + + + + run-msbuild-props-target + generate-sources + + run + + + + + + + + + + + + + + pack-nupkg + package + + run + + + + + + + + + + - \ No newline at end of file + diff --git a/importer/dll/Cyberduck.Importer.msbuildproj b/protocols/dll/Cyberduck.Protocols.ikvmproj similarity index 80% rename from importer/dll/Cyberduck.Importer.msbuildproj rename to protocols/dll/Cyberduck.Protocols.ikvmproj index 8622a7d14bd..5ad594aa05d 100644 --- a/importer/dll/Cyberduck.Importer.msbuildproj +++ b/protocols/dll/Cyberduck.Protocols.ikvmproj @@ -1,16 +1,12 @@ - net472;net8.0 - - - - \ No newline at end of file + diff --git a/protocols/dll/build.xml b/protocols/dll/build.xml index 296b9012ad0..4cdf34143f5 100644 --- a/protocols/dll/build.xml +++ b/protocols/dll/build.xml @@ -21,17 +21,25 @@ --> - + - + - - + + - + + + + + + + + + \ No newline at end of file diff --git a/protocols/dll/pom.xml b/protocols/dll/pom.xml index eabec321f96..52c4948ccfb 100644 --- a/protocols/dll/pom.xml +++ b/protocols/dll/pom.xml @@ -47,7 +47,7 @@ build-helper-maven-plugin - install-dll + install-nupkg verify attach-artifact @@ -55,14 +55,8 @@ - net472 - dll - ${project.build.directory}/net472/Cyberduck.Protocols.dll - - - net8.0 - dll - ${project.build.directory}/net8.0/Cyberduck.Protocols.dll + nupkg + ${project.build.directory}/Cyberduck.Protocols.${project.version}.nupkg @@ -81,15 +75,7 @@ ch.cyberduck Cyberduck.Core - net472 - dll - ${project.version} - - - ch.cyberduck - Cyberduck.Core - net8.0 - dll + nupkg ${project.version} diff --git a/src/main/msbuild/Cyberduck.Common.props b/src/main/msbuild/Cyberduck.Common.props index e9ebf0061fa..f76a2640bf3 100644 --- a/src/main/msbuild/Cyberduck.Common.props +++ b/src/main/msbuild/Cyberduck.Common.props @@ -13,23 +13,34 @@ false $(TargetBuildDir) - $(ArtifactsPath)obj\$(projectName)\ + $(ArtifactsPath)obj\$(MSBuildProjectName)\ $(ArtifactsPath) false 12 + $(TargetBuildDir).nuget\packages\;$(RestoreAdditionalProjectFallbackFolders) + + - - false diff --git a/src/main/msbuild/Cyberduck.Common.targets b/src/main/msbuild/Cyberduck.Common.targets index 62ecf99f2f2..6702cc87762 100644 --- a/src/main/msbuild/Cyberduck.Common.targets +++ b/src/main/msbuild/Cyberduck.Common.targets @@ -18,4 +18,4 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.References.props b/src/main/msbuild/Cyberduck.References.props index 83c7da8e297..d4ca367ce98 100644 --- a/src/main/msbuild/Cyberduck.References.props +++ b/src/main/msbuild/Cyberduck.References.props @@ -2,16 +2,16 @@ - $(CyberduckDir)bonjour\dll\Cyberduck.Bonjour.proj + $(CyberduckDir)bonjour\dll\Cyberduck.Bonjour.ikvmproj $(CyberduckDir)bonjour\src\main\csharp\Cyberduck.Bonjour.Native.csproj - $(CyberduckDir)cli\dll\Cyberduck.Cli.proj + $(CyberduckDir)cli\dll\Cyberduck.Cli.ikvmproj - $(CyberduckDir)core\dll\Cyberduck.Core.proj + $(CyberduckDir)core\dll\Cyberduck.Core.ikvmproj $(CyberduckDir)core\src\main\csharp\Cyberduck.Core.Native.csproj @@ -20,22 +20,33 @@ $(CyberduckDir)core\native\refresh\src\main\csharp\Cyberduck.Core.Refresh.csproj - $(CyberduckDir)cryptomator\dll\Cyberduck.Cryptomator.proj + $(CyberduckDir)cryptomator\dll\Cyberduck.Cryptomator.ikvmproj - $(CyberduckDir)importer\dll\Cyberduck.Importer.proj + $(CyberduckDir)importer\dll\Cyberduck.Importer.ikvmproj - $(CyberduckDir)protocols\dll\Cyberduck.Protocols.proj + $(CyberduckDir)protocols\dll\Cyberduck.Protocols.ikvmproj - - - - Cyberduck.%(Identity) - - + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.wxs.props b/src/main/msbuild/Cyberduck.wxs.props deleted file mode 100644 index e5c4f6cf7ab..00000000000 --- a/src/main/msbuild/Cyberduck.wxs.props +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/src/main/msbuild/Cyberduck.wxs.targets b/src/main/msbuild/Cyberduck.wxs.targets index 165ee016f26..df44acd5659 100644 --- a/src/main/msbuild/Cyberduck.wxs.targets +++ b/src/main/msbuild/Cyberduck.wxs.targets @@ -1,5 +1,7 @@ + + diff --git a/windows/Directory.Build.props b/windows/Directory.Build.props index 423651ecc5d..a3586910509 100644 --- a/windows/Directory.Build.props +++ b/windows/Directory.Build.props @@ -17,7 +17,6 @@ $(MSBuildThisFileDirectory) - false diff --git a/windows/build.xml b/windows/build.xml index 170392f0ee9..2184cdc27f8 100755 --- a/windows/build.xml +++ b/windows/build.xml @@ -30,13 +30,13 @@ - + - + @@ -74,12 +74,11 @@ - + - diff --git a/windows/build.proj b/windows/dirs.proj similarity index 100% rename from windows/build.proj rename to windows/dirs.proj From 640f3c91d02e4b575e7c95df651def0842c72b84 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Thu, 15 May 2025 13:18:47 +0200 Subject: [PATCH 07/28] Packaging --- .editorconfig | 2 +- Cyberduck.sln | 25 +- cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs | 28 +- cli/src/main/wix/Bundle/duck.bundle.wixproj | 6 - .../main/csharp/Cyberduck.Core.Refresh.csproj | 5 +- .../main/nuget/Cyberduck.Core.Refresh.nuspec | 2 +- .../main/csharp/Cyberduck.Core.Native.csproj | 14 +- global.json | 2 +- windows/dirs.proj | 5 +- windows/pom.xml | 28 +- windows/src/main/csharp/Cyberduck.csproj | 4 +- windows/src/main/package/package.wapproj | 7 - .../Bootstrapper/Cyberduck Bootstrapper.wxs | 40 +- .../Cyberduck.Bootstrapper.wixproj | 86 +--- .../main/wix/Bundle/Cyberduck.Bundle.wixproj | 114 +---- windows/src/main/wix/Bundle/Cyberduck.wxs | 405 +++++++----------- windows/src/main/wix/Directory.Build.props | 4 +- .../CustomAction.cpp | 129 ------ .../CustomAction.def | 4 - .../WindowsVersionCustomAction.vcxproj | 117 ----- .../wix/WindowsVersionCustomAction/stdafx.cpp | 4 - .../wix/WindowsVersionCustomAction/stdafx.h | 15 - .../WindowsVersionCustomAction/targetver.h | 17 - 23 files changed, 238 insertions(+), 825 deletions(-) delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/CustomAction.cpp delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/CustomAction.def delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/WindowsVersionCustomAction.vcxproj delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/stdafx.cpp delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/stdafx.h delete mode 100644 windows/src/main/wix/WindowsVersionCustomAction/targetver.h diff --git a/.editorconfig b/.editorconfig index 467945db466..b8b05b40aa4 100644 --- a/.editorconfig +++ b/.editorconfig @@ -12,7 +12,7 @@ insert_final_newline = true charset = utf-8-bom # XML project files -[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,wixproj}] +[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,wixproj,ikvmproj}] indent_size = 2 # XML config files diff --git a/Cyberduck.sln b/Cyberduck.sln index 6436ed00215..1fa8c09ff94 100644 --- a/Cyberduck.sln +++ b/Cyberduck.sln @@ -26,13 +26,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "duck", "duck", "{457F1D6D-8 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Cyberduck", "Cyberduck", "{7D32EE61-B6F0-4978-B500-45172B181283}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WindowsVersionCustomAction", "windows\src\main\wix\WindowsVersionCustomAction\WindowsVersionCustomAction.vcxproj", "{FBA5EFE2-362B-4BAD-A748-3248F79468AC}" -EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Cyberduck.Bootstrapper", "windows\src\main\wix\Bootstrapper\Cyberduck.Bootstrapper.wixproj", "{00858CE5-437F-46BE-8A2E-519B552DBF7D}" EndProject Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Cyberduck.Bundle", "windows\src\main\wix\Bundle\Cyberduck.Bundle.wixproj", "{65AB4CE3-5AF4-411A-928C-7FFD250C6D85}" EndProject -Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "duck.bootstrapper", "cli\src\main\wix\Bootstrapper\duck.bootstrapper.wixproj", "{EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}" +Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "duck.bootstrapper", "cli\src\main\wix\Bootstrapper\duck.bootstrapper.wixproj", "{EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}" EndProject Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "duck.bundle", "cli\src\main\wix\Bundle\duck.bundle.wixproj", "{F6975079-F730-4A31-9909-DE536E524764}" EndProject @@ -93,18 +91,14 @@ Global {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Debug|x64.Build.0 = Debug|x64 {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Release|x64.ActiveCfg = Release|x64 {B5565834-1164-4858-AF50-AE89CFC9BDD2}.Release|x64.Build.0 = Release|x64 - {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Debug|x64.ActiveCfg = Debug|Win32 - {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Debug|x64.Build.0 = Debug|Win32 - {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Release|x64.ActiveCfg = Release|Win32 - {FBA5EFE2-362B-4BAD-A748-3248F79468AC}.Release|x64.Build.0 = Release|Win32 - {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Debug|x64.ActiveCfg = Debug|x86 - {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Debug|x64.Build.0 = Debug|x86 - {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Release|x64.ActiveCfg = Release|x86 - {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Release|x64.Build.0 = Release|x86 - {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Debug|x64.ActiveCfg = Debug|x86 - {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Debug|x64.Build.0 = Debug|x86 - {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.ActiveCfg = Release|x86 - {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.Build.0 = Release|x86 + {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Debug|x64.ActiveCfg = Debug|x64 + {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Debug|x64.Build.0 = Debug|x64 + {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Release|x64.ActiveCfg = Release|x64 + {00858CE5-437F-46BE-8A2E-519B552DBF7D}.Release|x64.Build.0 = Release|x64 + {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Debug|x64.ActiveCfg = Debug|x64 + {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Debug|x64.Build.0 = Debug|x64 + {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.ActiveCfg = Release|x64 + {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.Build.0 = Release|x64 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.ActiveCfg = Debug|x64 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.Build.0 = Debug|x64 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.ActiveCfg = Release|x64 @@ -165,7 +159,6 @@ Global {B5565834-1164-4858-AF50-AE89CFC9BDD2} = {8B08EF96-10D6-4F35-94C1-986F9F0F1506} {457F1D6D-8AEC-42E2-9211-2A8405C95019} = {0DF59FB4-AEA9-4213-A935-6DB851411B67} {7D32EE61-B6F0-4978-B500-45172B181283} = {0DF59FB4-AEA9-4213-A935-6DB851411B67} - {FBA5EFE2-362B-4BAD-A748-3248F79468AC} = {7D32EE61-B6F0-4978-B500-45172B181283} {00858CE5-437F-46BE-8A2E-519B552DBF7D} = {7D32EE61-B6F0-4978-B500-45172B181283} {65AB4CE3-5AF4-411A-928C-7FFD250C6D85} = {7D32EE61-B6F0-4978-B500-45172B181283} {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04} = {457F1D6D-8AEC-42E2-9211-2A8405C95019} diff --git a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs index 2b11b913413..66c58be352c 100644 --- a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs +++ b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs @@ -1,23 +1,27 @@ + Manufacturer="iterate GmbH" + Version="$(ProductVersion)" + UpgradeCode="98B2B672-3720-4CAC-BF3E-220757500AE0"> - - + + + + - + + Action="set" + Part="last" + Name="PATH" + Permanent="no" + System="yes" + Value="[INSTALLFOLDER]" /> diff --git a/cli/src/main/wix/Bundle/duck.bundle.wixproj b/cli/src/main/wix/Bundle/duck.bundle.wixproj index 7e1efc48745..8835682bb8d 100644 --- a/cli/src/main/wix/Bundle/duck.bundle.wixproj +++ b/cli/src/main/wix/Bundle/duck.bundle.wixproj @@ -6,12 +6,6 @@ ProductVersion=$(FileVersion) - - false - - - true - diff --git a/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj b/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj index f9afe529903..b93bb79f1fc 100644 --- a/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj +++ b/core/native/refresh/src/main/csharp/Cyberduck.Core.Refresh.csproj @@ -40,10 +40,13 @@ runtime; build; native; contentfiles; analyzers; buildtransitive - + + + + diff --git a/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec b/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec index 7c5e02ba937..67229ab9bd5 100644 --- a/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec +++ b/core/native/refresh/src/main/nuget/Cyberduck.Core.Refresh.nuspec @@ -12,11 +12,11 @@ - + diff --git a/core/src/main/csharp/Cyberduck.Core.Native.csproj b/core/src/main/csharp/Cyberduck.Core.Native.csproj index 0b2aa81ced9..4faf4585f78 100644 --- a/core/src/main/csharp/Cyberduck.Core.Native.csproj +++ b/core/src/main/csharp/Cyberduck.Core.Native.csproj @@ -15,16 +15,10 @@ - - net472 - - - x64 - - net472;net8.0-windows10.0.22621.0 - x64;arm64 + net472;net8.0-windows10.0.22621.0 10.0.14393.0 + x64;arm64 true @@ -45,13 +39,13 @@ - + - + diff --git a/global.json b/global.json index 906eed1f5c1..3124b4973a6 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "msbuild-sdks": { - "IKVM.NET.Sdk": "8.11.0-dev.283", + "IKVM.NET.Sdk": "8.11.2", "Microsoft.Build.NoTargets": "3.7.56", "Microsoft.Build.Traversal": "4.1.0", "WixToolset.Sdk": "5.0.2" diff --git a/windows/dirs.proj b/windows/dirs.proj index a8e703d6492..163805f076f 100644 --- a/windows/dirs.proj +++ b/windows/dirs.proj @@ -15,9 +15,8 @@ - - - + + diff --git a/windows/pom.xml b/windows/pom.xml index 248ea6a64fa..8d3622fe8fd 100644 --- a/windows/pom.xml +++ b/windows/pom.xml @@ -76,6 +76,10 @@ + + pack-nupkg + none + @@ -84,57 +88,49 @@ ch.cyberduck Cyberduck.Core - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Core.Native - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Core.Refresh - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Protocols - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Bonjour - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Bonjour.Native - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Importer - net472 - dll + nupkg ${project.version} ch.cyberduck Cyberduck.Cryptomator - net472 - dll + nupkg ${project.version} diff --git a/windows/src/main/csharp/Cyberduck.csproj b/windows/src/main/csharp/Cyberduck.csproj index f11ba5602e2..580c75146bc 100644 --- a/windows/src/main/csharp/Cyberduck.csproj +++ b/windows/src/main/csharp/Cyberduck.csproj @@ -3,8 +3,8 @@ WinExe net472 - win-x64 x64 + win-x64 true true @@ -23,6 +23,8 @@ PreserveNewest $(Filename)$(Extension) + + diff --git a/windows/src/main/package/package.wapproj b/windows/src/main/package/package.wapproj index 5f8d27d72bb..195a1684444 100644 --- a/windows/src/main/package/package.wapproj +++ b/windows/src/main/package/package.wapproj @@ -22,17 +22,10 @@ 55cdd736-9a8a-4091-ac99-60e2f9c73269 10.0.22621.0 10.0.15063.0 - net472;$(AssetTargetFallback) ..\csharp\Cyberduck.csproj false - - False - - - True - $(SignOutput) diff --git a/windows/src/main/wix/Bootstrapper/Cyberduck Bootstrapper.wxs b/windows/src/main/wix/Bootstrapper/Cyberduck Bootstrapper.wxs index 4670c451b2e..fa5456bf793 100644 --- a/windows/src/main/wix/Bootstrapper/Cyberduck Bootstrapper.wxs +++ b/windows/src/main/wix/Bootstrapper/Cyberduck Bootstrapper.wxs @@ -1,42 +1,28 @@ - - - - - - - - - + + + + + + + - + - - - = v10.0 AND CBNumber >= 14393]]> - + - - - - + + + - + diff --git a/windows/src/main/wix/Bootstrapper/Cyberduck.Bootstrapper.wixproj b/windows/src/main/wix/Bootstrapper/Cyberduck.Bootstrapper.wixproj index bc6715eb74b..a49733496ea 100644 --- a/windows/src/main/wix/Bootstrapper/Cyberduck.Bootstrapper.wixproj +++ b/windows/src/main/wix/Bootstrapper/Cyberduck.Bootstrapper.wixproj @@ -1,89 +1,19 @@ - - - + - 3.14 - 00858CE5-437F-46BE-8A2E-519B552DBF7D - 2.0 - Cyberduck-Installer-$(Version) + Cyberduck-Installer-$(FileVersion) + x64 Bundle CyberduckDir=$(CyberduckDir);SetupDir=$(SetupDir) - - Debug;$(DefineConstants) - false - - - true - - - - - - - - - - - $(WixExtDir)\WixNetFxExtension.dll - WixNetFxExtension - - - $(WixExtDir)\WixBalExtension.dll - WixBalExtension - - - $(WixExtDir)\WixUtilExtension.dll - WixUtilExtension - + + + - - cyberduck-installer-msi - {65ab4ce3-5af4-411a-928c-7ffd250c6d85} - True - True - Binaries;Content;Satellites - INSTALLFOLDER - + - - - - - - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0@InstallationFolder) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots@KitsRoot10) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)bin\ - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion).0\ - $(Win10SDKBinPath)$(Win10SDKVersion) - - - - - $(FrameworkSdkPath)bin\signtool.exe - $(WinSDK)\bin\x86\signtool.exe - $(Win10SDKVerBinPath)x86\signtool.exe - - - - - - - - - - + \ No newline at end of file diff --git a/windows/src/main/wix/Bundle/Cyberduck.Bundle.wixproj b/windows/src/main/wix/Bundle/Cyberduck.Bundle.wixproj index 7202cc9ce30..b0c6812e83a 100644 --- a/windows/src/main/wix/Bundle/Cyberduck.Bundle.wixproj +++ b/windows/src/main/wix/Bundle/Cyberduck.Bundle.wixproj @@ -1,117 +1,13 @@ - - - + - 3.11 - 65ab4ce3-5af4-411a-928c-7ffd250c6d85 - 2.0 - Cyberduck-Installer-$(Version) - Package - x64 + Cyberduck-Installer-$(FileVersion) + x64 CyberduckDir=$(CyberduckDir); - ProfilesDir=$(CyberduckDir)profiles\default\; - LicenseFile=$(CyberduckDir)i18n/src/main/resources/en.lproj/License.txt; - IkvmRuntimeDir=$(TargetBuildDir)\ikvm; $(DefineConstants) - - Debug;$(DefineConstants) - false - - - true - - - - - - - cyberduck - {04AFCFBB-97D5-44EA-B087-F0CFAEB51E30} - True - True - Binaries;Content;Satellites - INSTALLFOLDER - - - WindowsVersionCustomAction - {fba5efe2-362b-4bad-a748-3248f79468ac} - True - True - Binaries;Content;Satellites - INSTALLFOLDER - - - - - $(WixExtDir)\WixNetFxExtension.dll - WixNetFxExtension - - - $(WixExtDir)\WixUtilExtension.dll - WixUtilExtension - - - - - Profiles - PROFILES - ProfileComponents - var.ProfilesDir - - - ikvm - INSTALLLOCATION - IkvmRuntime - var.IkvmRuntimeDir - + - - - - - - - - - - - - - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0@InstallationFolder) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots@KitsRoot10) - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)bin\ - $(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion).0\ - $(Win10SDKBinPath)$(Win10SDKVersion) - - - - - $(FrameworkSdkPath)bin\signtool.exe - $(WinSDK)\bin\x86\signtool.exe - $(Win10SDKVerBinPath)x86\signtool.exe - - - - - - - - - - - - - - - - - + \ No newline at end of file diff --git a/windows/src/main/wix/Bundle/Cyberduck.wxs b/windows/src/main/wix/Bundle/Cyberduck.wxs index 37f58a1f041..28de928b60c 100644 --- a/windows/src/main/wix/Bundle/Cyberduck.wxs +++ b/windows/src/main/wix/Bundle/Cyberduck.wxs @@ -1,299 +1,208 @@ - - - - - + + - - - - + + + + - - = 14393]]> - - - - - - - - - - - - + - - + + - - + + + + + + + + + + + + - + - - + + + + Name="Cyberduck" + Advertise="yes" + Description="Libre FTP, SFTP, WebDAV, SMB, S3 and OpenStack Swift browser" + Directory="ApplicationProgramsFolder" + WorkingDirectory="INSTALLFOLDER" + Icon="icon.ico"> - - + + + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - + + + + + + + + + - - - - - - + + + + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - - - - - - - - - - - - AUTOSTART=1 - - + \ No newline at end of file diff --git a/windows/src/main/wix/Directory.Build.props b/windows/src/main/wix/Directory.Build.props index 9b5738332d1..d13e2e3b000 100644 --- a/windows/src/main/wix/Directory.Build.props +++ b/windows/src/main/wix/Directory.Build.props @@ -18,8 +18,8 @@ - $(OutputPath)$(Configuration) - $(CyberduckDir)setup\wix\ + $(BaseOutputPath)$(Configuration)\ + $(CyberduckDir)setup\wix\ diff --git a/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.cpp b/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.cpp deleted file mode 100644 index b4656568fec..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.cpp +++ /dev/null @@ -1,129 +0,0 @@ -#include "stdafx.h" -#include -#include - -BOOL GetKernelVersion(VS_FIXEDFILEINFO& vInfo) -{ - static const wchar_t kernel32[] = L"\\kernel32.dll"; - wchar_t path[MAX_PATH]; - - unsigned int n = GetSystemDirectory(path, MAX_PATH); - memcpy_s(path + n, MAX_PATH, kernel32, sizeof(kernel32)); - - unsigned int size = GetFileVersionInfoSize(path, NULL); - if (size == 0) - { - return false; - } - - std::vector verionInfo; - verionInfo.resize(size); - BOOL result = GetFileVersionInfo(path, 0, size, verionInfo.data()); - if (!result || GetLastError() != S_OK) - { - return false; - } - - VS_FIXEDFILEINFO *vinfo; - result = VerQueryValue(verionInfo.data(), L"\\", (LPVOID *)&vinfo, &size); - vInfo = *vinfo; - - return result; -} - -OSVERSIONINFO GetOSVersionInfo() -{ - OSVERSIONINFO osvi; - - VS_FIXEDFILEINFO vinfo; - if (GetKernelVersion(vinfo)) - { - osvi.dwMajorVersion = HIWORD(vinfo.dwProductVersionMS); - osvi.dwMinorVersion = LOWORD(vinfo.dwProductVersionMS); - osvi.dwBuildNumber = HIWORD(vinfo.dwProductVersionLS); - } - - return osvi; -} - -bool windows10orGreater() -{ - static const wchar_t kernel32[] = L"\\kernel32.dll"; - wchar_t path[MAX_PATH]; - - unsigned int n = GetSystemDirectory(path, MAX_PATH); - memcpy_s(path + n, MAX_PATH, kernel32, sizeof(kernel32)); - - unsigned int size = GetFileVersionInfoSize(path, NULL); - if (size == 0) - { - return false; - } - - std::vector verionInfo; - verionInfo.resize(size); - BOOL result = GetFileVersionInfo(path, 0, size, verionInfo.data()); - if (!result || GetLastError() != S_OK) - { - return false; - } - - VS_FIXEDFILEINFO *vinfo; - result = VerQueryValue(verionInfo.data(), L"\\", (LPVOID *)&vinfo, &size); - if (!result || size < sizeof(VS_FIXEDFILEINFO)) - { - return false; - } - - return HIWORD(vinfo->dwProductVersionMS) >= 10; -} - -UINT __stdcall CustomAction1( - MSIHANDLE hInstall -) -{ - HRESULT hr = S_OK; - UINT er = ERROR_SUCCESS; - - hr = WcaInitialize(hInstall, "CustomAction1"); - ExitOnFailure(hr, "Failed to initialize"); - - WcaLog(LOGMSG_STANDARD, "Initialized."); - - // TODO: Add your custom action code here. - auto eightOrGreater = IsWindows8OrGreater(); - if (eightOrGreater) - { - auto osVersion = GetOSVersionInfo(); - hr = WcaSetIntProperty(L"VersionNT", osVersion.dwMajorVersion * 100 + osVersion.dwMinorVersion); - ExitOnFailure(hr, "Failed on set VersionNT"); - hr = WcaSetIntProperty(L"WindowsBuild", osVersion.dwBuildNumber); - ExitOnFailure(hr, "Failed on set WindowsBuild"); - } - -LExit: - er = SUCCEEDED(hr) ? ERROR_SUCCESS : ERROR_INSTALL_FAILURE; - return WcaFinalize(er); -} - - -// DllMain - Initialize and cleanup WiX custom action utils. -extern "C" BOOL WINAPI DllMain( - __in HINSTANCE hInst, - __in ULONG ulReason, - __in LPVOID -) -{ - switch (ulReason) - { - case DLL_PROCESS_ATTACH: - WcaGlobalInitialize(hInst); - break; - - case DLL_PROCESS_DETACH: - WcaGlobalFinalize(); - break; - } - - return TRUE; -} diff --git a/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.def b/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.def deleted file mode 100644 index eaa41932285..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/CustomAction.def +++ /dev/null @@ -1,4 +0,0 @@ -LIBRARY "WindowsVersionCustomAction" - -EXPORTS - CustomAction1 diff --git a/windows/src/main/wix/WindowsVersionCustomAction/WindowsVersionCustomAction.vcxproj b/windows/src/main/wix/WindowsVersionCustomAction/WindowsVersionCustomAction.vcxproj deleted file mode 100644 index e13162a9c7e..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/WindowsVersionCustomAction.vcxproj +++ /dev/null @@ -1,117 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - - {fba5efe2-362b-4bad-a748-3248f79468ac} - Win32Proj - WindowsVersionCustomAction - 10.0 - - - - - DynamicLibrary - v140 - v141 - v142 - v143 - DynamicLibrary - Unicode - - - true - true - - - false - true - false - - - - - - - - - - - - - - Use - Level3 - $(WIX)sdk\$(WixPlatformToolset)\inc;%(AdditionalIncludeDirectories) - WIN32;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS;%(PreprocessorDefinitions) - - - Windows - CustomAction.def - msi.lib;dutil.lib;wcautil.lib;Version.lib;%(AdditionalDependencies) - $(WIX)sdk\$(WixPlatformToolset)\lib\x86;%(AdditionalLibraryDirectories) - - - - - MachineX86 - - - - - Disabled - _DEBUG;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebug - EditAndContinue - - - true - - - - - MaxSpeed - true - NDEBUG;%(PreprocessorDefinitions) - MultiThreaded - true - ProgramDatabase - - - true - true - true - - - - - - Create - - - - - - - - - - - - - - - - - - diff --git a/windows/src/main/wix/WindowsVersionCustomAction/stdafx.cpp b/windows/src/main/wix/WindowsVersionCustomAction/stdafx.cpp deleted file mode 100644 index 9a5cc24eaa5..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/stdafx.cpp +++ /dev/null @@ -1,4 +0,0 @@ -#include "stdafx.h" - -// TODO: reference any additional headers you need in STDAFX.H -// and not in this file diff --git a/windows/src/main/wix/WindowsVersionCustomAction/stdafx.h b/windows/src/main/wix/WindowsVersionCustomAction/stdafx.h deleted file mode 100644 index 2a8fcf239f2..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/stdafx.h +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once - -#include "targetver.h" - -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -// Windows Header Files: -#include -#include -#include - -// WiX Header Files: -#include - - -// TODO: reference additional headers your program requires here diff --git a/windows/src/main/wix/WindowsVersionCustomAction/targetver.h b/windows/src/main/wix/WindowsVersionCustomAction/targetver.h deleted file mode 100644 index c3a06de6f83..00000000000 --- a/windows/src/main/wix/WindowsVersionCustomAction/targetver.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#ifndef WINVER // Specifies that the minimum required platform is Windows XP. -#define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows. -#endif - -#ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows XP. -#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows. -#endif - -#ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 6.0 SP3. -#define _WIN32_IE 0x0603 // Change this to the appropriate value to target other versions of IE. -#endif - -#ifndef _WIN32_MSI // Specifies that the minimum required MSI version is MSI 3.1 -#define _WIN32_MSI 310 // Change this to the appropriate value to target other versions of MSI. -#endif From e275ef50b22deb5f20421c273d98f142cc145156 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 20 May 2025 13:06:49 +0200 Subject: [PATCH 08/28] Sign artifacts during build --- src/main/msbuild/Cyberduck.Net.targets | 13 +++++-------- src/main/msbuild/Cyberduck.java.After.targets | 4 ---- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/src/main/msbuild/Cyberduck.Net.targets b/src/main/msbuild/Cyberduck.Net.targets index 00e21646a6c..edd85d01997 100644 --- a/src/main/msbuild/Cyberduck.Net.targets +++ b/src/main/msbuild/Cyberduck.Net.targets @@ -19,14 +19,11 @@ win-x64 - - - - - - SignTool.exe sign /d "$(AppName)" /fd sha256 /tr http://timestamp.entrust.net/TSS/RFC3161sha2TS /td sha256 /a /sm /n "iterate GmbH" - PATH=@(SignToolPath, '%3B') - + + + + + diff --git a/src/main/msbuild/Cyberduck.java.After.targets b/src/main/msbuild/Cyberduck.java.After.targets index 21068becaaf..851cc15fecd 100644 --- a/src/main/msbuild/Cyberduck.java.After.targets +++ b/src/main/msbuild/Cyberduck.java.After.targets @@ -2,8 +2,4 @@ - - - - \ No newline at end of file From 1215ac3c7bc83e8430a1cfb8dc2ce085cad0990e Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 20 May 2025 13:07:01 +0200 Subject: [PATCH 09/28] Skip PDBs --- cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs | 2 +- windows/src/main/wix/Bundle/Cyberduck.wxs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs index 66c58be352c..cb13f9ddfc3 100644 --- a/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs +++ b/cli/src/main/wix/Bundle/Cyberduck CLI-WiX.wxs @@ -10,7 +10,7 @@ - + - + From ed7f93f32da87d1a39783ef51a3c0b5a15b51f5b Mon Sep 17 00:00:00 2001 From: David Kocher Date: Mon, 2 Jun 2025 17:07:31 +0200 Subject: [PATCH 10/28] Update dependency. --- cli/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cli/pom.xml b/cli/pom.xml index ee96138b736..ee29c428fc8 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -80,7 +80,7 @@ org.fusesource.jansi jansi - 2.4.0 + 2.4.2 From 1f8d59799a0f4c8cf72d77a018c8fc01dfc975bf Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 27 May 2025 13:22:02 +0200 Subject: [PATCH 11/28] Simplify Cyberduck Windows --- src/main/msbuild/Cyberduck.wapproj.props | 21 +++++++++++++++++++ windows/build.xml | 2 +- .../src/main/package/Directory.Build.props | 9 -------- windows/src/main/package/package.wapproj | 2 +- 4 files changed, 23 insertions(+), 11 deletions(-) create mode 100644 src/main/msbuild/Cyberduck.wapproj.props delete mode 100644 windows/src/main/package/Directory.Build.props diff --git a/src/main/msbuild/Cyberduck.wapproj.props b/src/main/msbuild/Cyberduck.wapproj.props new file mode 100644 index 00000000000..b1d2c94e1e9 --- /dev/null +++ b/src/main/msbuild/Cyberduck.wapproj.props @@ -0,0 +1,21 @@ + + + + + $(BaseOutputPath) + $(OutputPath)$(Configuration)\ + + \ No newline at end of file diff --git a/windows/build.xml b/windows/build.xml index 2184cdc27f8..51e383cbfe2 100755 --- a/windows/build.xml +++ b/windows/build.xml @@ -52,7 +52,7 @@ - + diff --git a/windows/src/main/package/Directory.Build.props b/windows/src/main/package/Directory.Build.props deleted file mode 100644 index 5a1f1658923..00000000000 --- a/windows/src/main/package/Directory.Build.props +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - $(OutputPath)$(Configuration)\ - - - diff --git a/windows/src/main/package/package.wapproj b/windows/src/main/package/package.wapproj index 195a1684444..3ae1ed9c962 100644 --- a/windows/src/main/package/package.wapproj +++ b/windows/src/main/package/package.wapproj @@ -31,7 +31,7 @@ - + Package.appxmanifest Designer Package.appxmanifest.template From ea66734ee48677840bc825371edee2401638e937 Mon Sep 17 00:00:00 2001 From: David Kocher Date: Mon, 2 Jun 2025 17:24:30 +0200 Subject: [PATCH 12/28] Add native dependencies. --- cli/dll/pom.xml | 16 ++++++++++++++++ cli/linux/pom.xml | 16 ++++++++++++++++ cli/osx/pom.xml | 18 +++++++++++++++++- cli/pom.xml | 2 +- pom.xml | 1 + 5 files changed, 51 insertions(+), 2 deletions(-) diff --git a/cli/dll/pom.xml b/cli/dll/pom.xml index fcd9f978d57..b0eafac5771 100644 --- a/cli/dll/pom.xml +++ b/cli/dll/pom.xml @@ -130,5 +130,21 @@ + + org.fusesource.jansi + jansi + ${jansi.version} + x86_64 + dll + runtime + + + org.fusesource.jansi + jansi + ${jansi.version} + arm64 + dll + runtime + diff --git a/cli/linux/pom.xml b/cli/linux/pom.xml index 48e734dea7b..d6c86421649 100644 --- a/cli/linux/pom.xml +++ b/cli/linux/pom.xml @@ -127,5 +127,21 @@ cli ${project.version} + + org.fusesource.jansi + jansi + ${jansi.version} + x86_64 + so + runtime + + + org.fusesource.jansi + jansi + ${jansi.version} + arm64 + so + runtime + diff --git a/cli/osx/pom.xml b/cli/osx/pom.xml index c89dce8a6e2..b7b5911ac4b 100644 --- a/cli/osx/pom.xml +++ b/cli/osx/pom.xml @@ -81,7 +81,7 @@ ${project.build.directory}/duck.bundle/Contents/Frameworks - dylib + dylib,jnilib runtime true true @@ -226,5 +226,21 @@ test ${project.version} + + org.fusesource.jansi + jansi + ${jansi.version} + x86_64 + jnilib + runtime + + + org.fusesource.jansi + jansi + ${jansi.version} + arm64 + jnilib + runtime + diff --git a/cli/pom.xml b/cli/pom.xml index ee29c428fc8..bbf0d6c0051 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -80,7 +80,7 @@ org.fusesource.jansi jansi - 2.4.2 + ${jansi.version} diff --git a/pom.xml b/pom.xml index f9590696aaa..9ca2615e069 100644 --- a/pom.xml +++ b/pom.xml @@ -92,6 +92,7 @@ 4.5.0 8u312b07 0.10.0 + 2.4.2 ch.cyberduck.test.IntegrationTest From 11e24cba2455b76984a437e510a4dbf3062a1d5c Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Wed, 28 May 2025 11:24:21 +0200 Subject: [PATCH 13/28] Use installer Profile in cli-windows --- cli/windows/pom.xml | 86 ++++++++++++++++++++++++++++----------------- 1 file changed, 53 insertions(+), 33 deletions(-) diff --git a/cli/windows/pom.xml b/cli/windows/pom.xml index 4b0bbe4830d..215b9482e39 100644 --- a/cli/windows/pom.xml +++ b/cli/windows/pom.xml @@ -39,39 +39,6 @@ maven-antrun-plugin - - run-ant-installer-target - package - - run - - - - - - - - - - - - - run-ant-deploy-target - deploy - - run - - - - - - - - - - - - pack-nupkg none @@ -117,5 +84,58 @@ + + installer + + + env.JENKINS_HOME + + + Windows + + + + + + maven-antrun-plugin + + + run-ant-installer-target + package + + run + + + + + + + + + + + + + run-ant-deploy-target + deploy + + run + + + + + + + + + + + + + + + + + \ No newline at end of file From 113c125562c836176a22d69004b4fb92b4d0a7ad Mon Sep 17 00:00:00 2001 From: David Kocher Date: Mon, 2 Jun 2025 17:29:37 +0200 Subject: [PATCH 14/28] Removed native libraries in archive. --- cli/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cli/pom.xml b/cli/pom.xml index bbf0d6c0051..f57a0171c47 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -79,7 +79,7 @@ org.fusesource.jansi - jansi + jansi-min ${jansi.version} From ba400a421f31f18f7f91189d1faadd52ae995d73 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Wed, 28 May 2025 15:34:48 +0200 Subject: [PATCH 15/28] Review outputs --- .../native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec | 2 +- core/i18n-gen/i18n-gen.targets | 2 +- src/main/msbuild/Cyberduck.Artifacts.targets | 5 ++++- src/main/msbuild/Cyberduck.Common.targets | 4 ---- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec b/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec index 8a3cd206e97..9134c53240f 100644 --- a/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec +++ b/bonjour/native/src/main/nuget/Cyberduck.Bonjour.Native.nuspec @@ -15,6 +15,6 @@ - + \ No newline at end of file diff --git a/core/i18n-gen/i18n-gen.targets b/core/i18n-gen/i18n-gen.targets index a3065ae2dfd..a59f1a0595a 100644 --- a/core/i18n-gen/i18n-gen.targets +++ b/core/i18n-gen/i18n-gen.targets @@ -1,6 +1,6 @@  - $(CyberduckDir)core\target\netstandard2.0\i18n-gen.dll + $(CyberduckDir)core\target\i18n-gen.dll - + $(BaseOutputPath) + + false + $(BaseOutputPath) diff --git a/src/main/msbuild/Cyberduck.Common.targets b/src/main/msbuild/Cyberduck.Common.targets index 6702cc87762..64fd8f0a99d 100644 --- a/src/main/msbuild/Cyberduck.Common.targets +++ b/src/main/msbuild/Cyberduck.Common.targets @@ -2,10 +2,6 @@ - - - - From 8cdb4f1772b12a3ddce508ed5071980c4a4b49ba Mon Sep 17 00:00:00 2001 From: David Kocher Date: Mon, 2 Jun 2025 17:38:12 +0200 Subject: [PATCH 16/28] Set library.jansi.path for loading native library. --- cli/osx/build.xml | 2 +- .../csharp/ch/cyberduck/cli/WindowsTerminalPreferences.cs | 4 ++++ .../ch/cyberduck/core/preferences/ApplicationPreferences.cs | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cli/osx/build.xml b/cli/osx/build.xml index 3fbdc051e19..ed291d181ec 100644 --- a/cli/osx/build.xml +++ b/cli/osx/build.xml @@ -23,7 +23,7 @@ + value="-client --add-opens=java.base/sun.security.ssl=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED -Djava.library.path=$APP_PACKAGE/Contents/Frameworks -Dlibrary.jansi.path=$APP_PACKAGE/Contents/Frameworks -Djna.boot.library.path=$APP_PACKAGE/Contents/Frameworks -Djna.library.path=$APP_PACKAGE/Contents/Frameworks -Djna.nounpack=true -Djava.awt.headless=true -Dsun.jnu.encoding=utf-8 -Dfile.encoding=utf-8 -Dsun.io.useCanonCaches=false -DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector -XX:+UseG1GC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:+UseStringDeduplication"/> diff --git a/cli/src/main/csharp/ch/cyberduck/cli/WindowsTerminalPreferences.cs b/cli/src/main/csharp/ch/cyberduck/cli/WindowsTerminalPreferences.cs index e4cadaf6cb6..641979ee41c 100644 --- a/cli/src/main/csharp/ch/cyberduck/cli/WindowsTerminalPreferences.cs +++ b/cli/src/main/csharp/ch/cyberduck/cli/WindowsTerminalPreferences.cs @@ -16,6 +16,7 @@ // feedback@cyberduck.io // +using System; using ch.cyberduck.cli; using ch.cyberduck.core.cryptomator; using ch.cyberduck.core.serviceloader; @@ -28,6 +29,7 @@ using Ch.Cyberduck.Core.Proxy; using java.security; using sun.security.mscapi; +using JavaSystem = java.lang.System; namespace Ch.Cyberduck.Cli { @@ -48,6 +50,8 @@ protected override void setDefaults() { base.setDefaults(); + JavaSystem.setProperty("library.jansi.path", AppContext.BaseDirectory); + this.setDefault("application.language", "en"); Security.addProvider(new SunMSCAPI()); diff --git a/core/src/main/csharp/ch/cyberduck/core/preferences/ApplicationPreferences.cs b/core/src/main/csharp/ch/cyberduck/core/preferences/ApplicationPreferences.cs index 696187f5406..75300e13ce5 100644 --- a/core/src/main/csharp/ch/cyberduck/core/preferences/ApplicationPreferences.cs +++ b/core/src/main/csharp/ch/cyberduck/core/preferences/ApplicationPreferences.cs @@ -45,8 +45,6 @@ public ApplicationPreferences(Locales locales, IPropertyStoreFactory propertySto this.locales = locales; SetEnvironmentInfo(); this.propertyStore = propertyStore.New(); - - JavaSystem.setProperty("jna.boot.library.path", AppContext.BaseDirectory); } public override List applicationLocales() => locales.applicationLocales(); @@ -145,6 +143,8 @@ protected override void setDefaults() { base.setDefaults(); + JavaSystem.setProperty("jna.boot.library.path", AppContext.BaseDirectory); + this.setDefault("os.version", Environment.OSVersion.Version.ToString()); this.setDefault("oauth.handler.scheme", From f91d2e3492e5e30391b99bacf0154a0bc6f201dc Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Wed, 28 May 2025 15:35:28 +0200 Subject: [PATCH 17/28] Bundle x64/arm64 MSI package --- cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs | 9 +++++++-- cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj | 9 ++++----- cli/src/main/wix/Bundle/duck.bundle.wixproj | 2 +- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs b/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs index 2c445637adb..ed8e1457821 100644 --- a/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs +++ b/cli/src/main/wix/Bootstrapper/Cyberduck CLI Bundle.wxs @@ -1,5 +1,5 @@  - + @@ -9,7 +9,12 @@ - + + + + + + diff --git a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj index 8dffba80524..c6d00922eb2 100644 --- a/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj +++ b/cli/src/main/wix/Bootstrapper/duck.bootstrapper.wixproj @@ -1,15 +1,14 @@ - + - duck-$(FileVersion)-$(Platform) - x64;arm64 + duck-$(FileVersion) Bundle - CyberduckDir=$(CyberduckDir);SetupDir=$(SetupDir) + CyberduckDir=$(CyberduckDir);SetupDir=$(SetupDir);ProductVersion=$(FileVersion) - + \ No newline at end of file diff --git a/cli/src/main/wix/Bundle/duck.bundle.wixproj b/cli/src/main/wix/Bundle/duck.bundle.wixproj index 8835682bb8d..709eca5b97f 100644 --- a/cli/src/main/wix/Bundle/duck.bundle.wixproj +++ b/cli/src/main/wix/Bundle/duck.bundle.wixproj @@ -7,6 +7,6 @@ - + \ No newline at end of file From a09949aa155bc756e42d2207e8cd42c40591a2d8 Mon Sep 17 00:00:00 2001 From: David Kocher Date: Tue, 10 Jun 2025 16:06:19 +0200 Subject: [PATCH 18/28] Move dependencies to arch profiles. --- cli/linux/pom.xml | 40 ++++++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/cli/linux/pom.xml b/cli/linux/pom.xml index d6c86421649..61480291368 100644 --- a/cli/linux/pom.xml +++ b/cli/linux/pom.xml @@ -81,6 +81,14 @@ ${jna-version} runtime + + org.fusesource.jansi + jansi + ${jansi.version} + arm64 + so + runtime + @@ -99,6 +107,14 @@ ${jna-version} runtime + + org.fusesource.jansi + jansi + ${jansi.version} + ${os.arch} + so + runtime + @@ -117,6 +133,14 @@ ${jna-version} runtime + + org.fusesource.jansi + jansi + ${jansi.version} + x86_64 + so + runtime + @@ -127,21 +151,5 @@ cli ${project.version} - - org.fusesource.jansi - jansi - ${jansi.version} - x86_64 - so - runtime - - - org.fusesource.jansi - jansi - ${jansi.version} - arm64 - so - runtime - From 64e65d6009731ea9d4840f76fe9cb0520240687b Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 16 Jun 2025 19:12:10 +0200 Subject: [PATCH 19/28] Disable building of CLI installers in Visual Studio (requires dirs.proj) --- Cyberduck.sln | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/Cyberduck.sln b/Cyberduck.sln index 1fa8c09ff94..c4ad8a680da 100644 --- a/Cyberduck.sln +++ b/Cyberduck.sln @@ -26,9 +26,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "duck", "duck", "{457F1D6D-8 EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Cyberduck", "Cyberduck", "{7D32EE61-B6F0-4978-B500-45172B181283}" EndProject -Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Cyberduck.Bootstrapper", "windows\src\main\wix\Bootstrapper\Cyberduck.Bootstrapper.wixproj", "{00858CE5-437F-46BE-8A2E-519B552DBF7D}" +Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "Cyberduck.Bootstrapper", "windows\src\main\wix\Bootstrapper\Cyberduck.Bootstrapper.wixproj", "{00858CE5-437F-46BE-8A2E-519B552DBF7D}" EndProject -Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Cyberduck.Bundle", "windows\src\main\wix\Bundle\Cyberduck.Bundle.wixproj", "{65AB4CE3-5AF4-411A-928C-7FFD250C6D85}" +Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "Cyberduck.Bundle", "windows\src\main\wix\Bundle\Cyberduck.Bundle.wixproj", "{65AB4CE3-5AF4-411A-928C-7FFD250C6D85}" EndProject Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "duck.bootstrapper", "cli\src\main\wix\Bootstrapper\duck.bootstrapper.wixproj", "{EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}" EndProject @@ -100,13 +100,9 @@ Global {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.ActiveCfg = Release|x64 {65AB4CE3-5AF4-411A-928C-7FFD250C6D85}.Release|x64.Build.0 = Release|x64 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.ActiveCfg = Debug|x64 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Debug|x64.Build.0 = Debug|x64 {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.ActiveCfg = Release|x64 - {EF87DE0E-BC36-4D3C-8852-C8AD11D01F04}.Release|x64.Build.0 = Release|x64 {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.ActiveCfg = Debug|x64 - {F6975079-F730-4A31-9909-DE536E524764}.Debug|x64.Build.0 = Debug|x64 {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.ActiveCfg = Release|x64 - {F6975079-F730-4A31-9909-DE536E524764}.Release|x64.Build.0 = Release|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Debug|x64.ActiveCfg = Debug|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Debug|x64.Build.0 = Debug|x64 {D1286C4A-9D6A-4904-B9AD-CB7688483EDB}.Release|x64.ActiveCfg = Release|x64 From 4d6a56a0fe25096330304ebfe78f5928eff0ab1f Mon Sep 17 00:00:00 2001 From: David Kocher Date: Wed, 11 Jun 2025 13:08:08 +0200 Subject: [PATCH 20/28] Set native libraries search path for Linux CLI. --- .../main/java/ch/cyberduck/cli/LinuxTerminalPreferences.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cli/src/main/java/ch/cyberduck/cli/LinuxTerminalPreferences.java b/cli/src/main/java/ch/cyberduck/cli/LinuxTerminalPreferences.java index e3fe8cf2bce..2c82309e44f 100644 --- a/cli/src/main/java/ch/cyberduck/cli/LinuxTerminalPreferences.java +++ b/cli/src/main/java/ch/cyberduck/cli/LinuxTerminalPreferences.java @@ -45,6 +45,9 @@ public LinuxTerminalPreferences() { protected void setDefaults() { super.setDefaults(); + this.setProperty("library.jansi.path", new ClasspathResourcesFinder().find().getAbsolute()); + this.setProperty("jna.boot.library.path", new ClasspathResourcesFinder().find().getAbsolute()); + try { final Process echo = Runtime.getRuntime().exec(new String[]{"/bin/sh", "-c", "echo ~"}); this.setDefault("local.user.home", StringUtils.strip(IOUtils.toString(echo.getInputStream(), Charset.defaultCharset()))); From 485aa2cbb142fb4ac99783c739092648f355d8d5 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 16 Jun 2025 19:20:38 +0200 Subject: [PATCH 21/28] Restore IKVM from NuGet --- nuget.config | 1 - 1 file changed, 1 deletion(-) diff --git a/nuget.config b/nuget.config index 27ec7ec52e3..6eb13f94983 100644 --- a/nuget.config +++ b/nuget.config @@ -15,7 +15,6 @@ - From 805c5244fa375db85a1fe8569a5e11cdd3eb8122 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 16 Jun 2025 14:47:17 +0200 Subject: [PATCH 22/28] Copy arm64/x64 to specific lib dir --- cli/src/main/csharp/duck.csproj | 1 + pom.xml | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cli/src/main/csharp/duck.csproj b/cli/src/main/csharp/duck.csproj index 5f4c2c89973..0f2fb7b9ac4 100644 --- a/cli/src/main/csharp/duck.csproj +++ b/cli/src/main/csharp/duck.csproj @@ -15,6 +15,7 @@ + diff --git a/pom.xml b/pom.xml index 9ca2615e069..69c8c3327ce 100644 --- a/pom.xml +++ b/pom.xml @@ -624,7 +624,7 @@ ${project.build.directory}/lib - net472,net8.0,net8.0-x64,net8.0-arm64,aarch64,x86_64 + net472,net8.0,net8.0-x64,net8.0-arm64,aarch64,arm64,x86_64 dll true true @@ -652,7 +652,7 @@ ${project.build.directory}/lib/arm64 - aarch64 + aarch64,arm64 dll true true From 4034191c497ecfc792aca89f440f9a9be0f05325 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Mon, 16 Jun 2025 19:31:18 +0200 Subject: [PATCH 23/28] Remove build warning --- nuget.config | 2 -- 1 file changed, 2 deletions(-) diff --git a/nuget.config b/nuget.config index 6eb13f94983..dd70b0b80a4 100644 --- a/nuget.config +++ b/nuget.config @@ -14,8 +14,6 @@ - - From d7a187757c3c6cbcb2c09b9d549ddcc4d5020e2e Mon Sep 17 00:00:00 2001 From: David Kocher Date: Mon, 16 Jun 2025 21:47:16 +0200 Subject: [PATCH 24/28] Replace with universal binary. --- cli/osx/pom.xml | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/cli/osx/pom.xml b/cli/osx/pom.xml index b7b5911ac4b..a1fb6580e29 100644 --- a/cli/osx/pom.xml +++ b/cli/osx/pom.xml @@ -228,17 +228,8 @@ org.fusesource.jansi - jansi + libjansi ${jansi.version} - x86_64 - jnilib - runtime - - - org.fusesource.jansi - jansi - ${jansi.version} - arm64 jnilib runtime From 1d4b9f2143cf76da37387befee9b52a81477ba17 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 17 Jun 2025 12:45:19 +0200 Subject: [PATCH 25/28] Add missing skip sign conditions --- src/main/msbuild/Cyberduck.wxs.targets | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/msbuild/Cyberduck.wxs.targets b/src/main/msbuild/Cyberduck.wxs.targets index df44acd5659..1241f6b1325 100644 --- a/src/main/msbuild/Cyberduck.wxs.targets +++ b/src/main/msbuild/Cyberduck.wxs.targets @@ -2,13 +2,13 @@ - + - + - + From 809279bac2d7aaed57516f2e7655e7103737a997 Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 17 Jun 2025 14:06:52 +0200 Subject: [PATCH 26/28] Skip signing of i18n-gen --- core/i18n-gen/i18n-gen.csproj | 1 + core/i18n-gen/i18n-gen.targets | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/i18n-gen/i18n-gen.csproj b/core/i18n-gen/i18n-gen.csproj index c6589fd79fb..48ab06f0c85 100644 --- a/core/i18n-gen/i18n-gen.csproj +++ b/core/i18n-gen/i18n-gen.csproj @@ -5,6 +5,7 @@ 9.0 i18n_gen True + false diff --git a/core/i18n-gen/i18n-gen.targets b/core/i18n-gen/i18n-gen.targets index a59f1a0595a..07430771edb 100644 --- a/core/i18n-gen/i18n-gen.targets +++ b/core/i18n-gen/i18n-gen.targets @@ -10,7 +10,7 @@ AssemblyFile="$(i18n_gen_dll)" TaskFactory="TaskHostFactory" /> - + Date: Tue, 24 Jun 2025 11:21:32 +0200 Subject: [PATCH 27/28] Reference platform native lib path --- windows/src/main/csharp/Cyberduck.csproj | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/windows/src/main/csharp/Cyberduck.csproj b/windows/src/main/csharp/Cyberduck.csproj index 580c75146bc..80d5ead984f 100644 --- a/windows/src/main/csharp/Cyberduck.csproj +++ b/windows/src/main/csharp/Cyberduck.csproj @@ -19,10 +19,7 @@ - - PreserveNewest - $(Filename)$(Extension) - + From 22835667142da87287a076d84aa5d484a1650f9a Mon Sep 17 00:00:00 2001 From: AliveDevil Date: Tue, 24 Jun 2025 15:20:00 +0200 Subject: [PATCH 28/28] Forward Platform to Test target --- core/native/build.xml | 1 + windows/build.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/core/native/build.xml b/core/native/build.xml index b216c68a96f..1eca549a17f 100644 --- a/core/native/build.xml +++ b/core/native/build.xml @@ -48,6 +48,7 @@ + \ No newline at end of file diff --git a/windows/build.xml b/windows/build.xml index 51e383cbfe2..49087fb3884 100755 --- a/windows/build.xml +++ b/windows/build.xml @@ -49,6 +49,7 @@ +