OS Manuals

/usr/bin/waypipe

A proxy for Wayland clients that enables application forwarding over SSH

From waypipe 0.11.3-r2 (enterprise-packages), captured 2026-11-08 by running waypipe --help (exit 0). permalink

A proxy to remotely use Wayland protocol applications
Example: waypipe ssh user@server weston-terminal
See `man 1 waypipe` for detailed help.

Usage: waypipe [OPTIONS] <MODE>

Modes:
  ssh     Wrap an ssh invocation to run Waypipe on both ends of the connection, and
          automatically forward Wayland applications
  server  Run remotely to run a process and forward application data through a socket
          to a matching `waypipe client` instance
  client  Run locally to set up a Unix socket that `waypipe server` can connect to
  bench   Estimate the best compression level used to send data, for each bandwidth

Options:
  -c, --compress <comp>       Choose compression method: lz4[=#], zstd[=#], none [default: lz4]
  -d, --debug                 Print debug messages
  -n, --no-gpu                Block protocols using GPU memory transfers (via DMABUFs)
  -o, --oneshot               Only permit one connected application
  -s, --socket <path>         Set the socket path to either create or connect to.
                              - server default: /tmp/waypipe-server.sock
                              - client default: /tmp/waypipe-client.sock
                              - ssh: sets the prefix for client and server socket paths
                              - vsock: [[s]CID:]port
      --display <display>     server,ssh: Set the Wayland display name or path
      --drm-node <path>       Set preferred DRM node (may be ignored in ssh/client modes)
      --remote-node <path>    ssh: Set the preferred remote DRM node
      --ssh-bin <path>        ssh: Set the ssh binary to use [default: ssh]
      --remote-bin <path>     ssh: Set the remote Waypipe binary to use [default: waypipe]
      --remote-socket <path>  ssh: sets prefix of the remote server socket path
      --login-shell           server: If server command is empty, run a login shell
      --threads <threads>     Number of worker threads to use: 0 ⇒ hardware threads/2 [default: 0]
      --title-prefix <str>    Prepend string to all window titles [default: ]
      --unlink-socket         server: Unlink the socket that Waypipe connects to
      --video <options>       Video-encode DMABUFs when possible
                              option format: (none|h264|vp9|av1)[,bpf=<X>] [default: none]
      --vsock                 Connect over vsock-type socket instead of unix socket
      --secctx <str>          client,ssh: Use security-context protocol with application ID
      --xwls                  server,ssh: Run xwayland-satellite to handle X11 clients
  -h, --help                  Print help
  -V, --version               Print version
Options (21)
OptionDescriptionSource
-c, --compress compChoose compression method: lz4[=#], zstd[=#], none [default: lz4]help + man
-d, --debugPrint debug log messages.help + man
-n, --no-gpuBlock protocols like wayland-drm and linux-dmabuf which require access to e.g. render nodes.help + man
-o, --oneshotOnly permit a single connection, and exit when it is closed.help + man
-s, --socket pathSet the socket path to either create or connect to.help + man
--display displayFor server or ssh mode, provide WAYLAND_DISPLAY and let waypipe configure its Wayland display socket to have a matching path.help + man
--drm-node pathSpecify the path R to the drm device that this instance of waypipe should use and (in server mode) notify connecting applications about.help + man
--remote-node pathIn ssh mode, specify the path R to the drm device that the remote instance of waypipe (running in server mode) should use.help + man
--ssh-bin pathIn ssh mode, specify the path R to the ssh binary, or its name if it is available in PATH.help + man
--remote-bin pathIn ssh mode, specify the path R to the waypipe binary on the remote computer, or its name if it is available in PATH.help + man
--remote-socket pathIn ssh mode, specify the prefix used by the remote waypipe server for its socket path.help + man
--login-shellserver: If server command is empty, run a login shellhelp + man
--threads threadsSet the number of total threads (including the main thread) which a waypipe instance will create.help + man
--title-prefix strPrepend P to any window titles specified using the XDG shell protocol.help + man
--unlink-socketserver: Unlink the socket that Waypipe connects tohelp + man
--video optionsVideo-encode DMABUFs when possible option format: (none|h264|vp9|av1)[,bpf=<X>] [default: none]help + man
--vsockConnect over vsock-type socket instead of unix sockethelp + man
--secctx strEnable the Wayland security context protocol (client or ssh modes).help + man
--xwlsserver,ssh: Run xwayland-satellite to handle X11 clientshelp + man
-h, --helpShow help message and quit.help + man
-V, --versionBriefly describe Waypipe's version and the features it was built with, then quit.help + man
Exit status (1) from the manual page
1Waypipe has encountered an error
Examples (13) from the manual page, untested

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.