Cyberduck Cyberduck Mountain Duck Mountain Duck Cyberduck CLI CLI

Mountain Duck

Integrated Connect Mode

· David Kocher · Posted in Mountain Duck

The new Integrated connect mode in Mountain Duck 5 synchronizes files and folders from a directory on the local disk with support from macOS and Windows.

While the Online and Smart Synchronization modes use device driver on Windows and NFS on macOS respectively to mount connections, the Integrated mode uses the tightly integrated File Provider (macOS) and Cloud Files (Windows) APIs to sync files from regular folder on the local disk like iCloud or OneDrive does. It allows faster writing and copy processes and access to cached content when offline.

Synchronization

The usage of dedicated operating system features for syncing make Mountain Duck 5 future proof. Like in Smart Synchronization connect mode, files are displayed as placeholders, cached on local disk and optionally selected to always keep offline.

The improved user experience includes familiar file management controls directly within Finder and Windows Explorer, allowing users to easily select files to keep offline, remove cached data, or exclude items from synchronization. Visual indicators provide instant feedback on synchronization status through additional icons displayed next to filenames. Real-time progress is shown during file transfers with progress bars over file icons and circular progress indicators, giving users complete visibility into upload and download operations.

Additional Context Menu Items

Additional context menu items in Windows Explorer and Finder.app on macOS provided by the system allow to download files or free up space for files already cached.

Spotlight

Windows Search and Spotlight on macOS can be used to search for files on remote storage in Integrated connect mode.

New Default

The Integrated connect mode is the default for new connections configured. Existing bookmarks retain the connect mode when an existing cache location is found.


Custom Versioning

· David Kocher · Posted in Mountain Duck

With Mountain Duck 5, a new storage-independent versioning option is introduced for protocols with no support for file versioning such as FTP/SFTP, WebDAV, and OpenStack Swift. Safeguard against potential file loss with custom versioning. Stash changes to a file in a versioned folder on the server.

The custom versioning option can be enabled in the bookmark configuration or by default in Preferences → Versions tab.

Use the context menu Info → Versions to retrieve the file history where previous versions can be previewed, deleted or restored. Alternatively manage previous versions stored in the folder named .duckversions adjacent to the file.

More information on the settings can be found in the documentation.


Mountain Duck 5 Public Beta

· David Kocher · Posted in Mountain Duck

Get a sneak peek at upcoming Mountain Duck 5. Features new Integrated connect mode using native APIs on Windows & macOS to integrate in the file explorer. No device driver installation or network mount required. The connect mode allows to sync files like OneDrive on Windows or iCloud Drive on macOS using the cloud storage provider of your choice. All major protocols are supported to connect to just about any server you want with SMB added as an additional option in version 5.

The new connect mode benefits from faster file write performance and file operations in general on par with operations on local disk. Local storage is managed by the operating system. The mount is not seen as a remote volume by applications but as a regular folder on disk and can be accessed when offline. You will find familiar user interface in Finder and Windows Explorer to select files to keep offline, remove cached data on disk or exclude from sync. An additional icon provided next to the filename is displayed indicating the synchronization status. Additionally, progress is shown when downloading or uploading a file with a progress bar over the file icon or circular progress indicator adjacent the filename. Windows Search and Spotlight on macOS can be used to search for files.

Choose Preferences → Update → Beta → Check for Update… in the Mountain Duck status bar menu to update. The build can be used with a validation registration key for version 4 while in beta.


Application blocked by Google

· David Kocher · Posted in Cyberduck, Mountain Duck

This issue has been resolved as of September 11th with the OAuth App Verification completed including the paid CASA assessment.

To access Google Drive or Google Cloud Storage using Cyberduck or Mountain Duck we have registered an OAuth 2.0 Client ID with Google that is required to show users a consent screen to access files from these cloud storage services using the respective APIs.

Google recently blocked the consent screen and now shows the following error when trying to open a new connection:

This app tried to access sensitive info in your Google Account. To keep your account safe, Google blocked this access.

We are aware of the problem and are currently working on getting the consent screen re-approved by Google.

No user data is collected or shared when you access your data in Google Drive or Google Cloud Storage using Cyberduck or Mountain duck. We do not transfer or disclose your information to third parties. Any data accessed is processed solely on your device.

As a workaround you can register your own Custom OAuth 2.0 Client ID for Google Cloud Storage and Google Drive and using with a custom connection profile instead.


Connect to ownCloud Infinite Scale (oCIS) using OAuth

· David Kocher · Posted in Cyberduck, Mountain Duck

ownCloud Infinite Scale is a user-centric, cloud-native, open source, file sharing and collaboration platform that offers infinite scalability and enables complete digital sovereignty. 

ownCloud Infinite Scale uses federated authentication with Keycloak as the identity provider by default. To connect using Cyberduck or Mountain Duck.

We will provide sample steps to connect to ownCloud Infinite Scale (oCIS) using OAuth 2.0/OpenID Connect (OIDC). It requires the client registration in the identity provider in ownCloud and a custom connection profile for Cyberduck & Mountain Duck. To allow to test this without a custom deployment, the sample makes use of the public instance running at ocis.ocis-keycloak.latest.owncloud.works with the identity provider at keycloak.ocis-keycloak.latest.owncloud.works. You can login with the username “admin” and password “admin”. Note that these demo instances are wiped periodically and all data and configuration is temporarily available only.

Import client configuration

You will need to import a client configuration for Keycloak to allow OAuth authentications from Cyberduck & Mountain Duck. The configuration registers a OAuth Client ID with the redirect URIs x-cyberduck-action:oauth and x-mountainduck-action:oauth set to allow a seamless login integration.

Connection Profile

The connection profile defines the custom OAuth Client ID to be used to connect to ownCloud including the authorization and token URLs used for authentication with the Keycloak identity provider. The connection profile matching the above client registration is

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Protocol</key>
        <string>owncloud</string>
        <key>Vendor</key>
        <string>owncloud.works</string>
        <key>Description</key>
        <string>ownCloud Infinite Scale</string>
        <key>Default Nickname</key>
        <string>ownCloud Infinite Scale</string>
        <key>Default Hostname</key>
        <string>ocis.ocis-keycloak.latest.owncloud.works</string>
        <key>Default Path</key>
        <string>/remote.php/webdav/</string>
        <key>Path Configurable</key>
        <true/>
        <key>Hostname Configurable</key>
        <true/>
        <key>OAuth Configurable</key>
        <true/>
        <key>OAuth Authorization Url</key>
        <string>https://keycloak.ocis-keycloak.latest.owncloud.works/realms/oCIS/protocol/openid-connect/auth</string>
        <key>OAuth Token Url</key>
        <string>https://keycloak.ocis-keycloak.latest.owncloud.works/realms/oCIS/protocol/openid-connect/token</string>
        <key>Scopes</key>
        <array>
            <string>openid</string>
            <string>email</string>
            <string>offline_access</string>
        </array>
        <key>OAuth Client ID</key>
        <string>3keLfua0olYvW1zKXTDB3OjAMPEYWEQNuiscli395GKJOiPnPURNQWGvGCJZf4Hw</string>
        <key>OAuth Client Secret</key>
        <string>yoqICbLIeYbpZPqDH4D8k4NKb04HqnrWBntEeVZEQ5gO1RmaUlln0Aqu1dj2UoF4</string>
        <key>OAuth Redirect Url</key>
        <string>${oauth.handler.scheme}:oauth</string>
        <key>Password Configurable</key>
        <false/>
        <key>Username Configurable</key>
        <false/>
    </dict>
</plist>

Save the file with the suffix .cyberduckprofile and double click to install and register with Cyberduck & Mountain Duck. This will enable the protocol option ownCloud Infinite Scale in the bookmark configuration.