Remote development
You can open a project on another machine over SSH and edit it as if it were local. The remote machine runs the Tyrn server components, and Tyrn on your computer connects to them.
Supported hosts
- Linux on x86_64, any distribution. The server components are static, so they don’t depend on the distribution’s libraries.
- macOS, on Apple silicon or Intel.
- Linux on ARM is not supported yet.
The first time you connect to a host, Tyrn downloads the Tyrn server components for that host from tyrn.dev. The host needs access to tyrn.dev for this. If it doesn’t have it, set upload_binary_over_ssh (see below) and Tyrn uploads them from your computer instead.
What is in the app
- Open Remote… in the File menu opens the remote servers list (
ctrl-cmd-oon macOS,ctrl-alt-shift-oon Linux). - Connect SSH Server asks for “the command you use to SSH into this server”, for example
ssh me@192.168.1.10. - You can give a server a nickname, copy its address and remove it from the same list.
- Tyrn runs the
sshprogram on your computer, so it uses your~/.ssh/config. Withread_ssh_configon (default), hosts from that file are offered in the list.
Connection settings
Servers you add are stored in ssh_connections in your settings.
{ "read_ssh_config": true, "ssh_connections": [ { "host": "192.168.1.10", "username": "me", "port": 22, "args": ["-i", "~/.ssh/work_id_file"], "nickname": "build-box", "connection_timeout": 10, "projects": [{ "paths": ["~/code/app"] }] } ]}| Key | Meaning |
|---|---|
host |
Host name or address |
username, port |
Override the values from your SSH config |
args |
Extra arguments for the ssh command |
nickname |
Name shown in the list |
projects |
Folders to open on that host |
connection_timeout |
Seconds to wait to connect. Default 10. |
upload_binary_over_ssh |
Upload the server program from your computer instead of downloading it on the host |
port_forwards |
Ports to forward, each with local_port and remote_port, and optionally local_host and remote_host |
Agent sessions on remote machines
Running agent sessions on a remote machine is planned. Today, sessions run on your computer.