Crates.io | gday |
lib.rs | gday |
version | 0.3.0 |
source | src |
created_at | 2024-06-07 23:13:55.22987 |
updated_at | 2024-12-02 02:33:11.568981 |
description | Command line tool to securely send files (without a relay or port forwarding). |
homepage | https://github.com/manforowicz/gday/tree/main/gday |
repository | https://github.com/manforowicz/gday/ |
max_upload_size | |
id | 1265310 |
size | 62,748 |
Command line tool to securely send files (without a relay or port forwarding).
peer_1: gday send file.mp4 folder Tell your mate to run "gday get 1.n5xn8.wvqsf".
peer_2: gday get 1.n5xn8.wvqsf Transfer complete.
To run the executable directly:
tar xf <file>
)../gday
To install with cargo:
cargo install gday
To install with brew:
brew install manforowicz/tap/gday
No limit on the size of files and folders sent.
Files are sent directly, without relay servers. A server is only used to exchange socket addresses at the beginning.
Automatically resumes interrupted transfers. Just gday send
the same files, and partial downloads will be detected and resumed.
Doesn't require port forwarding. Instead, uses TCP Hole Punching to traverse NATs. This may not work on very restrictive NATs. If that happens, enable IPv6 or move to a different network.
If a contact exchange server is down, just uses a different one from the default list. Or specify your own with --server
.
Server connection encrypted with TLS and file transfer end-to-end encrypted with ChaCha20Poly1305.
Automatically tries both IPv4 and IPv6.
Resistant to malicious servers impersonating your peer. Uses SPAKE2 to derive an encryption key from a shared secret.
No unsafe
Rust in this repository.
Usage: gday [OPTIONS] <COMMAND>
Commands:
send Send files and/or directories
get Receive files
help Print this message or the help of the given subcommand(s)
Options:
-s, --server <SERVER> Use a custom gday server with this domain name
-p, --port <PORT> Connect to a custom server port
-u, --unencrypted Connect to server with TCP instead of TLS
-v, --verbosity <VERBOSITY> Verbosity. (trace, debug, info, warn, error) [default: warn]
-h, --help Print help
-V, --version Print version
No relays | Works beyond LAN | Works through very strict NATs | No port forwarding | Encrypted | Can resume interrupted transfers | |
---|---|---|---|---|---|---|
gday | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
magic-wormhole | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
croc | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
p2pcopy | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ |
iwant | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ |
zget | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ |
sharedrop | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ |
filepizza | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ |
Personal SSH or HTTPS | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ |
Personal FTP | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Dropbox, Google Drive, etc. | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ |
Delivering a USB drive | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
Open an issue to add more projects to this list.