Skip to content

Desktop Applications (RDP, VNC, DCV, PSQL) #14677

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
bpmct opened this issue Sep 15, 2024 · 2 comments
Open

Desktop Applications (RDP, VNC, DCV, PSQL) #14677

bpmct opened this issue Sep 15, 2024 · 2 comments
Labels
roadmap https://coder.com/roadmap. Only humans may set this. roadmap-maybe Ideas we're considering! Only humans may set this.

Comments

@bpmct
Copy link
Member

bpmct commented Sep 15, 2024

Improve how users to connect to their workspace via generic desktop applications via URL schemes such as rdp, nice, vnc and postgres.

Note

This is a concept and the design/schema is not final.

Related #13212. Blocked on Coder Desktop (#14859).

Background

Today, we build native IDE plugins (e.g. coder/vscode-coder) and also offer users the ability to connect via a web app via the coder_app.

However, connecting to a workspace via another desktop client such as Microsoft Remote Desktop is possible, but non-trivial. See our docs. The primary issue here is that the CLI and port-forwarding is required but there is also not a great way to promote the use of such apps in the web UI.

Proposal

Support unique type(s) of coder_app to support VNC, RDP, DCV, PostgreSQL, and other custom URI schemes. I am not sure if type = desktop will suffice, or type=<rdp,vnc,dcv,postgresql,slack,desktop_custom> is needed to support some intricacies of each URI scheme/port forwarding thing.

Render desktop apps in the UI

Screenshot 2024-09-15 at 6 31 37 PM

And render desktop CTAs in Coder Desktop:

Screenshot 2024-09-15 at 6 40 21 PM

When clicked:

flowchart TD
  A[Is Coder Desktop installed?] --> |No| B[Prompt user to download]
  A --> |Yes| C[Is user logged in?]
  C --> |No| D[Prompt user to log in]
  C --> |Yes| E[Is VPN on?]
  E --> |No| F[Port forward]
  E --> |Yes| G[Use VPN hostname]
  F --> H["Open to native URL scheme (e.g. rdp://) to open local client"]
  G --> H
Loading

Product Requirements

  • List desktop apps in the web UI
  • List desktop apps (and web apps/helper apps) in Coder Desktop with one button to get to them
  • Play nicely with known protocols such as rdp, vnc, and dcv. If necessary, add support for these types if extra handling is needed besides a simple URI scheme
  • Support custom URI schemes and configurable ports being forwarded from workspace->local via coder_app schema
  • Support opening via the CLI with coder open command.
@bpmct bpmct changed the title Desktop Applications (RDP, VNC, DCV, PSQL) Simplify Connecting w/ Desktop Applications (RDP, VNC, DCV, PSQL) Sep 15, 2024
@bpmct bpmct changed the title Simplify Connecting w/ Desktop Applications (RDP, VNC, DCV, PSQL) Desktop Applications (RDP, VNC, DCV, PSQL) Sep 15, 2024
@matifali matifali removed the feature label Oct 14, 2024
@stirby stirby added roadmap https://coder.com/roadmap. Only humans may set this. roadmap-maybe Ideas we're considering! Only humans may set this. labels Oct 25, 2024
@matifali
Copy link
Member

I did some research, and it looks like Microsoft is rebranding the RDP clients to Windows App.

As per the docs, only the Windows versions support a URI to launch the app from a link.

@matifali
Copy link
Member

matifali commented May 20, 2025

RDP integration is complete.

We are discussing a more general approach to support other URI handlers. However, I suggest doing them post-GA and focusing on bugs and UX polishing.

cc: @deansheather @ibetitsmike

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
roadmap https://coder.com/roadmap. Only humans may set this. roadmap-maybe Ideas we're considering! Only humans may set this.
Projects
None yet
Development

No branches or pull requests

3 participants