🚧 (Alpha stage software) Library and tooling that supports remote filesystem and process operations. 🚧
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Chip Senkbeil e01a322866
Bump to v0.15.0-alpha.18
3 years ago
.github/workflows Switch release to use an alpine container to build musl 3 years ago
distant-core Bump to v0.15.0-alpha.18 3 years ago
distant-lua Bump to v0.15.0-alpha.18 3 years ago
distant-lua-tests Fix bad test reference to PENDING instead of pending 3 years ago
distant-ssh2 Bump to v0.15.0-alpha.18 3 years ago
src Add spacing and change to DISTANT CONNECT from DISTANT DATA 3 years ago
tests Couple of changes: 3 years ago
.gitignore Add native ssh (#57) 3 years ago
BUILDING.md Update building instructions 3 years ago
Cargo.lock Bump to v0.15.0-alpha.17 3 years ago
Cargo.toml Bump to v0.15.0-alpha.18 3 years ago
README.md Bump to 0.15.0-alpha.7 w/ new release.yml 3 years ago

README.md

distant - remotely edit files and run programs

Crates.io Docs.rs RustC 1.51+

Operating System Status
MacOS (x86, ARM) MacOS CI
Linux (x86) Linux CI
Windows (x86) Windows CI

🚧 (Alpha stage software) This program is in rapid development and may break or change frequently! 🚧

Details

The distant binary supplies both a server and client component as well as a command to start a server and configure the local client to be able to talk to the server.

Installation

Prebuilt Binaries

If you would like a pre-built binary, check out the releases section.

Building from Source

If you have cargo installed, you can directly download and build the source via:

cargo install distant

Alternatively, you can clone this repository and build from source following the build guide.

Examples

Launch a remote instance of distant by SSHing into another machine and starting the distant executable:

# Connects to my.example.com on port 22 via SSH to start a new session
distant launch my.example.com

# After the session is established, you can perform different operations
# on the remote machine via `distant action {command} [args]`
distant action copy path/to/file new/path/to/file
distant action run -- echo 'Hello, this is from the other side'

License

This project is licensed under either of

Apache License, Version 2.0, (LICENSE-APACHE or apache-license) MIT license (LICENSE-MIT or mit-license) at your option.