====== Magic Wormhole ====== Magic Wormhole is a tool to easy way to send data (a file or a directory) between a local computer and rhea. You need shell access on both the sender and receiver, but the computers can be on separate networks each behind their own firewalls. ====== Install ====== # get homebrew and python on MacOS if needed /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" brew install python # get magic-wormhole python -m pip install magic-wormhole command -v wormhole # confirm 'wormhole' is in PATH. see # pip show -vf magic-wormhole|grep -P 'Location:|/wormhole$' # add to ~/.zshrc: export PATH="$PATH:$path_from_above" Or download and run [[https://github.com/Jacalz/rymdport/releases|rymdport]] for a stand alone graphical interface! ===== Original ===== see https://magic-wormhole.readthedocs.io/en/latest/welcome.html#example - local: ''wormhole send $file'' - rhea: ''wormhole recive $code'' {{tools:pasted:20221206-111812.png}} ===== William ===== [[https://github.com/psanford/wormhole-william|wormhole-william]] is a compatible implementation provided as a [[https://github.com/psanford/wormhole-william/releases|single binary]] (written in golang) that will be easier to install if you do not already have python available locally (avoids ''pip install magicwormhole''). For a graphical interface see [[https://github.com/Jacalz/rymdport/releases|rymdport]], a single binary GUI implementation. ===== Alternatives ===== also see [[::admin:remoteaccess]] * [[https://github.com/schollz/croc|croc]] is nearly identical in usage to ''wormhole'' but can send globs of files instead of just a file or a directory * ''[[https://github.com/trzsz/trzsz|trzsz]]'' uses [[:tools:tmux]] (built into iterm2) as the transfer protocol. must have ssh access from local to host. provides GUI file picker. * [[https://app.globus.org/file-manager|globus]] ideal for very large transfers to e.g PSC or CRC * sshfs, rsync * syncthing * ipfs, tor, i2p