Skip to content

Repository files navigation

GuacamoleClient

GuacamoleClient Logo

Download Page All Downloads

➡️ Install and download page: https://jochenwezel.github.io/GuacamoleClient/

What is GuacamoleClient?

GuacamoleClient is a dedicated desktop client for users of existing Apache Guacamole servers. It provides a native application experience on Windows, Linux, and macOS, with improved handling of keyboard shortcuts, full-screen sessions, and multiple Guacamole server profiles.

This project is not a fork, replacement, or distribution of the Apache Guacamole server. A running Guacamole server is required.

Apache Guacamole is a free, clientless remote desktop gateway that supports standard protocols such as VNC, RDP, and SSH. For more information, visit https://guacamole.apache.org/.

Guacamole is usually accessed through a web browser. However, browser and operating-system shortcuts can interfere with remote sessions. GuacamoleClient embeds the Guacamole web interface in a dedicated desktop application to:

  • Prevent local browser and window shortcuts such as Ctrl+F4 and Alt+F4 from accidentally closing the Guacamole session or the entire browser application.
  • Capture operating-system shortcuts such as Alt+Tab, Win+R, and many others and send them to the remote session instead of handling them locally.
  • Use Ctrl+Alt+End as a safe replacement for Ctrl+Alt+Delete and send Ctrl+Alt+Delete to the remote session.
  • Provide full-screen sessions, multiple remote sessions, and profiles for multiple Guacamole servers.

Variants of GuacamoleClient

There are two variants of GuacamoleClient:

  1. GuacamoleClient-WinForms: A Windows Forms application
  2. GuacamoleClient-Avalonia: A cross-platform application

GuacamoleClient-Avalonia

The Avalonia version is a cross-platform application that can run on Windows, Linux, and macOS. It is based on Avalonia UI framework and uses the WebViewControl-Avalonia control and the embedded CefGlue browser to embed the Guacamole web interface.

Please note: platforms Mac and Linux still needs more testing. If you can help, please let us know any issues.

GuacamoleClient-WinForms

The most complete and stable version is the Windows Forms version. It uses the WebView2 control to embed the Guacamole web interface.

Still this version is under development and therefore lacks several features in comparison to e.g. mstsc.exe or other Remote Desktop clients. It may receive further updates and improvements.

Screenshots

Login screen of Guacamole server

GuacamoleClient Screenshot Login

Remote Desktop (RDP) session

GuacamoleClient Screenshot RDP-Session Windows Client GuacamoleClient Screenshot RDP-Session Linux Client

Full screen mode: no visible controls from your own computer

GuacamoleClient Screenshot RDP-Session Fullscreen Mode

Support for multiple Guacamole server profiles

Support environments for multiple customers, stages (e.g. PROD, TEST, etc.) with different color schemes GuacamoleClient Screenshot Multiple Profiles GuacamoleClient Screenshot Multiple Organizations

Create a test environment for Guacamole Server with docker-compose

If you need a Guacamole Server for testing purposes, you can easily set up a test environment using Docker Compose. For a quick guide, please refer to the documentation: SetupTestGuacamoleServer.md

FAQ, known issues, typical trouble shooting

  • issue: on window resize, remote screen resolution doesn't refresh dynamically at some RDP host connections
    • please note: this issue belongs to guacamole server and it's defaults when connecting to a RDP target machine
    • solution: edit connection settings in guacamole (as guacadmin or authorized user), go to section "Screen" and update property "Resize method" to "display-update". Then re-connect to the host.

About

A client app for Apache Guacamole - more or less a browser control but catching keyboard shortcuts as much as possible (e.g. preventing accidential closing of browser tab (Ctrl+F4) or whole browser app (Alt+F4).

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages