Skip to content

Compatibility

Controli is built as static Go binaries with CGO_ENABLED=0. That keeps installation simple and avoids runtime library problems on most machines.

Support Model

Controli targets operating systems and CPU architectures supported by the Go toolchain used for the release. It cannot guarantee every historical OS version, every vendor image, or damaged system installs.

The intended support goal is:

  • Current and recent Windows versions for joining sessions and best-effort hosting.
  • Intel and Apple Silicon Macs for hosting and joining.
  • Common Ubuntu and Linux systems for hosting and joining.
  • Additional Linux server and board architectures where Go can build the binary.

Host And Guest Support

PlatformJoinHost
macOS IntelYesYes
macOS Apple SiliconYesYes
Linux amd64YesYes
Linux arm64YesYes
Linux 386YesBest effort
Linux armv6YesBest effort
Linux armv7YesBest effort
Linux ppc64leYesBest effort
Linux riscv64YesBest effort
Linux s390xYesBest effort
Windows amd64YesBest effort
Windows 386YesBest effort
Windows armYesBest effort
Windows arm64YesBest effort

macOS and Linux hosting use a real PTY and can keep shells alive through tmux when it is installed. Windows hosting uses a stdio backend until ConPTY is added.

Release Assets

AssetUse
controli-darwin-arm64Apple Silicon Macs
controli-darwin-amd64Intel Macs
controli-linux-38632-bit Intel or AMD Linux
controli-linux-amd64Common Ubuntu, Debian, Fedora, and server Linux
controli-linux-armv6ARMv6 boards
controli-linux-armv7ARMv7 boards
controli-linux-arm64ARM64 Linux servers and boards
controli-linux-ppc64lePowerPC 64 little-endian Linux
controli-linux-riscv64RISC-V 64 Linux
controli-linux-s390xIBM Z and LinuxONE
controli-windows-386.exe32-bit Windows
controli-windows-amd64.exeCommon Intel or AMD Windows
controli-windows-arm.exe32-bit Windows ARM
controli-windows-arm64.exeWindows on ARM64

Practical Limits

  • Very old macOS releases may not run current Go-built binaries.
  • Very old Linux kernels may not run current Go-built binaries.
  • Host mode requires a working shell.
  • macOS and Linux host mode requires PTY support.
  • Persistent macOS and Linux host sessions require tmux.
  • Tunnel join mode requires outbound HTTPS and WebSocket access to the public tunnel hostname.
  • Relay fallback mode requires outbound HTTPS and WebSocket access to the relay.

Released under the MIT license.