Skip to content

brackendev/HaikuClip

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HaikuClip

Share text between the Haiku® and macOS clipboards. Copy on one system, then paste on the other.

Setup

Download the latest release from GitHub Releases.

Haiku

  1. Double-click HaikuClip-x.x.x-Haiku-x86_64.hpkg to install via HaikuDepot
  2. Reboot, or launch from Desktop applets in the Deskbar menu

A sync arrows icon appears in the Deskbar tray while HaikuClip is running. Click it to show the status and menu.

macOS

Requires macOS 13 or later. Choose arm64 for Apple Silicon or x86_64 for Intel.

  1. Move HaikuClip.app to Applications and launch it
  2. Click the feather icon in the menu bar, then Settings
  3. The default host (localhost) and port (60780) work for the QEMU setup described below

Connecting Haiku and macOS

Warning

HaikuClip sends clipboard text as plain TCP traffic and does not authenticate the other side. Keep the port on the local machine or inside a trusted network.

For Haiku VM setup on macOS, see haiku-macos-dev. It covers the QEMU launcher, networking, SSH, and NFS file sharing.

Same-machine VM (QEMU)

QEMU port forwarding sends traffic to the guest network address, not to the guest loopback address. Edit the Haiku settings file at ~/config/settings/HaikuClip to listen on all guest interfaces:

port=60780
listen=0.0.0.0

If HaikuClip is already running, restart it from the Deskbar tray icon (quit, then relaunch from Desktop applets). Otherwise the new settings take effect on first launch.

Add a port forward to the QEMU launch command (or the launcher script from haiku-macos-dev):

-netdev user,id=net0,hostfwd=tcp:127.0.0.1:60780-:60780

The 127.0.0.1 host address keeps the forwarded port reachable from the Mac only.

In the macOS app: host localhost, port 60780.

Cross-machine (SSH tunnel)

The default settings bind to loopback only, which is correct for this setup:

port=60780
listen=127.0.0.1

On the Mac, open a tunnel before launching the macOS app:

ssh -N -L 60780:127.0.0.1:60780 user@haiku-host

In the macOS app: host localhost, port 60780.

Other LAN setups

Setting listen=0.0.0.0 in ~/config/settings/HaikuClip exposes the plain TCP protocol on every network interface on the Haiku machine. Use this only on a trusted local network. Do not expose it to the public internet.

Usage

When both apps are connected, text clipboard sync is automatic. Copy text on one system and paste it on the other.

Status Icons

Platform Icon Disconnected Connecting Connected
macOS Feather Red dot Yellow dot No dot
Haiku Sync arrows Gray Yellow Green

Configuration

The Haiku daemon reads ~/config/settings/HaikuClip (created with defaults on first run). Restart via the Deskbar tray icon after changes.

Setting Default Description
port 60780 TCP port. Must match the macOS app.
listen 127.0.0.1 Bind address. Set to 0.0.0.0 for the QEMU setup described in Connecting Haiku and macOS.

The macOS app stores its host and port in the Settings window.

Contributing

See CONTRIBUTING.md for development setup, build commands, and code style.

Related Projects

Project Description
haiku-control-mcp MCP server for controlling Haiku
haiku-lisp-dev Lisp GUI development on Haiku
haiku-macos-dev macOS tools for running Haiku in QEMU

Trademarks

Haiku® and the HAIKU logo® are registered trademarks of Haiku, Inc. and are developed by the Haiku Project.

Mac and macOS are trademarks of Apple Inc., registered in the U.S. and other countries and regions.

HaikuClip is an independent project. It is not affiliated with, endorsed, or sponsored by Haiku, Inc., the Haiku Project, or Apple Inc.

License

MIT