Command Subsystem

This subsystem allows clients to execute new commands on the server.

Implementations

| Component | Link | |-------------------|------------------------------------------------------------------------------------------------------------------------| | client | xpra.client.subsystem.child_command | | client connection | n/a | | server | xpra.server.subsystem.child_command |

Client Capabilities

| Capability | Type | Purpose | |------------|---------|--------------------------------------------------------------------------| | xdg-menu | boolean | The client wants to receive the menu of commands available on the server |

Network Packets

Server-to-Client

If the client requested it, the server sends the menu using a generic setting-change packet:

| Argument | Type | Purpose | |------------------|------------|------------------| | setting-change | string | packet type | | xdg-menu | string | setting | | menu-data | dictionary | The updated menu |

Client-to-Server

The only packet type that can be sent to the server is start-command:

| Argument | Type | Purpose | |-----------------|-----------------|--------------------------------------------------------------------------------------------------| | start-command | string | packet type | | name | string | The name of the command to execute, for presentation purposes only | | command | list of strings | The full command to execute | | ignore | boolean | Whether this command should be taken into account by the exit-with-children server feature | | sharing | boolean | Whether this application should be shared with other clients connected to the same server or not |