Developers

Interfaces and APIs

Find versioned Go APIs and identify private session protocols.

Use each component's versioned API documentation with the source record for the commit described by this site. A successful site build does not establish compatibility between independently released modules.

Public Go packages

The module links name explicit versions. Check the component release tag before replacing a suite pin or copying a newer API.

Session protocols

  • Notifications: org.freedesktop.Notifications uses the D-Bus session bus. sysc-notify also streams presentation state through $XDG_RUNTIME_DIR/sysc-notify/presenter.v1.sock. One daemon owns the D-Bus name.
  • Tray: sysc-tray owns StatusNotifierItem and DBusMenu traffic, then sends presenter state over $XDG_RUNTIME_DIR/sysc-tray/presenter.v1.sock.
  • Clipboard: sysc-clipboard reads Wayland data-control selections and serves shell requests through its versioned control socket.
  • Shell IPC: sysc-shell ipc talks to the running shell. Internal IPC method names and wallpaper child sockets are implementation interfaces; use the documented command examples, not an assumed long-term wire contract.
  • Wayland: sysc-wayland connects through WAYLAND_SOCKET or WAYLAND_DISPLAY under XDG_RUNTIME_DIR. Run the connection and all proxy operations on one goroutine.

These interface descriptions follow the current default-branch commits in the source record. The pkg.go.dev links name explicit published versions and can lag the current source. The SYSC v0.1.3 suite pins released versions for these interfaces, so compare the installed version when debugging a mixed-version session.

For process ownership, socket diagnostics and D-Bus handover, see the service integration guide.