This is a directory for additional Qrexec service configuration.

Configuration syntax:

*   Configuration file: name must be exactly the same as service.

*   Configuration format: key value pair that must be separated by an equal
    sign (=) between the key and the value, while any number of spaces or tabs
    from the key to the equal sign or from the equal sign to the value are
    also supported, e.g. "key=value", "key   =  value", "key	= value".

*   Comments: Lines starting with hashtag/octothorpe/pound sign "#" are
    ignored.

*   Boolean values: true, false, 0, 1. For backwards compatibility, only the
    option "wait-for-session" accepts the boolean integers 0 and 1, of which
    should not be relied on for future update changes.

*   String values: must be enclosed by single quotes ('), escape sequences
    are unsupported, e.g. 'str'.

*   Service types: which kind of services does the configuration option
    supports, executables and/or sockets. For socket-based services, see
    https://www.qubes-os.org/doc/qrexec-socket-services/

Supported settings:

*   exit-on-client-eof:
    *   Description: Exit when the client shuts down its input stream, client
        sends EOF to stdin.
    *   Conflicting options: if set to 'true', cannot set the 'force-user'
        option.
    *   Service type: socket
    *   Value type: boolean
    *   Accepted values: true, false
    *   Default value: false
    *   Example: exit-on-client-eof=true

*   exit-on-service-eof:
    *   Description: Exit when the service shuts down its output stream,
        service sends EOF to stdout.
    *   Conflicting options: if set to 'true', cannot set the 'force-user'
        option.
    *   Service type: socket
    *   Value type: boolean
    *   Accepted values: true, false
    *   Default value: false
    *   Example: exit-on-service-eof=true

*   force-user:
    *   Description: Enforce that service should be run by the specified
        username. Useful to set the user at the target qube, which will be
        passed directly to PAM without being interpreted by Qrexec, instead of
        having to modify the policy in dom0.
    *   Service type: executable, socket
    *   Value type: string
    *   Default value: same user as in the policy, else it is 'user'.
    *   Example: force-user='user'

*   skip-service-descriptor:
    *   Description: Skip sending service descriptor and go for the actual
        data directly. Useful to skip sending metadata to socket-based
        services.
    *   Conflicting options: if set to 'true', cannot set the 'force-user'
        option.
    *   Service type: socket
    *   Value type: boolean
    *   Accepted values: true, false.
    *   Default value: false
    *   Example: skip-service-descriptor=true

*   wait-for-session:
    *   Description: Wait for full GUI session initialization before starting
        the service. Implemented by the RPC service qubes.WaitForSession.
        There is no timeout, if the session is never initialized (for example
        because there is no GUI running at all), service will never be
        started. It is possible for the service to be started even if
        qubes.WaitForSession fails, so the service must not depend on setting
        this option to 'true' for security.
    *   Service type: executable, socket
    *   Value type: boolean
    *   Accepted values: true, false, 0, 1.
    *   Default value: false
    *   Example: wait-for-session=true
