This is the development home for Cyberduck, a libre file transfer client for macOS and Windows. Command line interface (CLI) for Linux, macOS and Windows. The core libraries are used in Mountain Duck.
There is a Google Groups Cyberduck discussion mailing list.
The following additional mailing lists are hosted:
Source code is available licensed under the GNU General Public License Version 3. Pull requests welcome!
Translations to new languages are welcome. We use Transifex to localize resources. Current available localizations are English, Czech, Dutch, Finnish, French, German, Italian, Japanese, Korean, Norwegian, Portuguese, Slovak, Spanish, Chinese (Traditional & Simplified Han), Russian, Swedish, Hungarian, Danish, Polish, Indonesian, Catalan, Welsh, Thai, Turkish, Hebrew, Latvian, Greek, Serbian, Georgian and Slovenian.
Make sure to subscribe to the localization mailing list.
For general help about using Cyberduck, please refer to the documentation. The documentation is maintained in its own repository.
Additional connection profiles not bundled by default but available in Preferences → Profiles are maintained in its own repository.
These are nightly snapshot builds from the current development trunk featuring the latest bug fixes and enhancements. Be warned, though, these builds are potentially unstable and experimental. You can also switch to beta or snapshot builds in Preferences → Update.
Manually
.NET desktop development
Universal Windows Platform development
Desktop development with C++
Chocolatey
Without Visual Studio (IDE)
choco install visualstudio2022buildtools -y
choco install visualstudio2022-workload-manageddesktopbuildtools -y
choco install visualstudio2022-workload-vctools -y
choco install visualstudio2022-workload-universalbuildtools -y
With Visual Studio IDE
choco install visualstudio2022(edition) -y
choco install visualstudio2022-workload-manageddesktop -y
choco install visualstudio2022-workload-nativedesktop -y
choco install visualstudio2022-workload-universal -y
Replace (edition)
with your licensed IDE SKU: community, professional, enterprise
Install required dependencies, after installing Visual Studio IDE or build tools:
choco install microsoft-openjdk17 ant maven -y
choco install bonjour -y; choco install bonjour -y --force
Optional, see Remarks:
choco install wixtoolset -y
Remarks: Installing with Chocolatey may or may not fail spectacularly.
Following issues have been observed on a clean installation:
file not found
- though the Bonjour64.msi is extracted from BonjourPSSetup.exe.visualstudio*-workload-*
may halt with "Operation canceled",Restart your machine after installing these components.
Make sure that MSBuild
, mvn
, ant
and java
are on your PATH
-environment variable.
Developer Command Prompt for VS2022
, then run where msbuild.exe
, add first directory name to path
C:\Program Files\Microsoft Visual Studio\Community\Msbuild\Current\Bin\amd64
PATH
-variablePATH
.Additionally include the latest Windows Sdk-binary folder in your PATH
-environment variable:
%ProgramFiles(x86)%\Windows Kits\10\bin\10.0.<Latest>.0\x64
Run mvn verify -DskipTests -DskipSign
to build without running any tests and skip codesign. Find build artifacts in
osx/target/Cyberduck.app
windows/target/Cyberduck.exe
Run with -Pinstaller
to build installer packages with build artifacts
osx/target/release/*.(zip|pkg)
windows/target/release/*.(exe|msi)
cli/osx/target/release/*.(pkg|tar.gz)
cli/windows/target/release/*.(exe|msi)
cli/linux/target/release/*.(deb|rpm)
Active the sandboxing profile with -Psandbox
to apply sandbox entitlements com.apple.security.app-sandbox
.
You will run into warnings from MSBuild
/WiX
that are unrelated to how Cyberduck is built. You may safely ignore them.
Build with -Pdebug
to allow attaching the remote debugger on port 5005
.
Due to Visual Studio not being able to handle Java projects it is required to follow these steps for debugging:
mvn verify -Dconfiguration=debug
which ensures that debugging symbols are generated
This prevents Visual Studio (or MSBuild invoked from Maven
) from generating optimized assemblies which in turn may
prevent debugging..java
file and set a breakpoint. Visual Studio breaks either on or near the line selected.Debugging capabilities include
Go To Symbol is not working due to missing Java support.
After packaging, run mvn test -DskipITs
to run unit tests but skip integration tests.
Maven artifacts are available in a repository hosted on Amazon S3.
Use the following Maven configuration in your project POM to reference artifacts from Cyberduck
<repositories>
<repository>
<id>maven.cyberduck.io-release</id>
<url>https://s3-eu-west-1.amazonaws.com/repo.maven.cyberduck.io/releases</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
You will need to add the AWS Maven Wagon to your build using
<build>
<extensions>
<extension>
<groupId>org.springframework.build</groupId>
<artifactId>aws-maven</artifactId>
<version>5.0.0.RELEASE</version>
</extension>
</extensions>
</build>
<dependency>
<groupId>ch.cyberduck</groupId>
<artifactId>protocols</artifactId>
<type>pom</type>
<version>7.1.0</version>
</dependency>
<dependency>
<groupId>ch.cyberduck</groupId>
<artifactId>binding</artifactId>
<version>7.1.0</version>
</dependency>
<dependency>
<groupId>ch.cyberduck</groupId>
<artifactId>libcore</artifactId>
<version>${project.version}</version>
</dependency>
YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.