Document qubes.VMExec call

See QubesOS/qubes-issues#4850.
This commit is contained in:
Pawel Marczewski 2020-01-24 11:42:01 +01:00
parent 34eb3f387f
commit 6563038796
No known key found for this signature in database
GPG key ID: DE42EE9B14F96465

View file

@ -193,6 +193,18 @@ Other Qrexec services installed by default:
can send icon for the same window multiple times to replace previous one (for can send icon for the same window multiple times to replace previous one (for
example for animated icons) example for animated icons)
- `qubes.VMShell` - call any command in the VM; the command(s) is passed one per line - `qubes.VMShell` - call any command in the VM; the command(s) is passed one per line
- `qubes.VMShell+WaitForSession` waits for full VM startup first
- `qubes.VMExec` - call any command in the VM, without using shell, the command
needs to be passed as argument and encoded as follows:
- the executable name and arguments are separated by `+`
- everything except alphanumeric characters, `.` and `_` needs to be
escaped
- bytes are escaped as `-HH` (where `HH` is hex code, capital letters only)
- `-` itself can be escaped as `--`
- example: to run `ls -a /home/user`, use
`qubes.VMExec+ls+--a+-2Fhome-2Fuser`
- `qubes.VMExecGUI` - a variant of `qubes.VMExec` that waits for full VM
startup first
Currently Qubes still calls few tools in VM directly, not using service Currently Qubes still calls few tools in VM directly, not using service
abstraction. This will change in the future. Those tools are: abstraction. This will change in the future. Those tools are: