Skip to content

Add a graphical remote login

The standard daemon now is abstracted and two new behaviours are implemented:

  • Running as a system service (AKA daemon-system):
    Started with --system option.
    It is started as gnome-remote-desktop user.
    On a new RDP connection it requests GDM to start a RemoteDisplay with a headless GDM greeter session.
    When a new RemoteDisplay iface from GDM is exported it will register a handover iface to handover the RDP client to the session on this RemoteDisplay.
    It handovers RDP clients between sessions using these handover ifaces (See the commit descriptions for more info).
  • Running on a headless user session (AKA daemon-handover):
    Started with --handover option.
    This daemon is attached as a service on greeter or user headless sessions.
    It will tell daemon-system using the handover dbus iface to start the handover, and daemon-system will proceed with the handover process.
    This daemon gets the RDP socket connection from the daemon-system.
  • The standard daemon now is daemon-user.

The steps required to use this:

  • Configure the daemon-system rdp credentials and tls-cert/key with: grdctl --system [...].
  • Start the systemd service: gnome-remote-desktop-system.service.

Here I attach a video to show my current result.

(Depends on gnome-settings-daemon!342 (merged))
(Depends on gdm!180 (merged))
(Depends on gnome-session!89 (merged))
(Depends on FreeRDP!8252)

This MR is now split in:

Edited by Joan Torres

Merge request reports