cb8b5a6919
This enables `--select-only 1,2,3` which gets appended to the magnet link as `&so=1,2,3`. It's a partial implementation because we're missing support for file ranges ie `--select-only 4-6` type: added fixes: - https://github.com/casey/intermodal/issues/245 |
||
---|---|---|
.github/workflows | ||
bin | ||
book | ||
completions | ||
man | ||
src | ||
tmp | ||
www | ||
.gitattributes | ||
.gitignore | ||
build.rs | ||
Cargo.lock | ||
Cargo.toml | ||
CHANGELOG.md | ||
CONTRIBUTING | ||
justfile | ||
LICENSE | ||
README.md | ||
rustfmt.toml |
intermodal: a 40' shipping container for the Internet
Intermodal is a user-friendly and featureful command-line BitTorrent metainfo utility. The binary is called imdl
and runs on Linux, Windows, and macOS.
At the moment, creation, viewing, and verification of .torrent
files is supported.
For more about the project and its goals, check out this post.
Manual
General
Installation
Supported Operating Systems
imdl
supports Linux, MacOS, and Windows, and should work on other unix OSes.
If it does not, please open an issue!
Packages
Operating System | Package Manager | Package | Command |
---|---|---|---|
Various | Cargo | imdl | cargo install imdl |
Arch Linux | Yay | intermodalAUR | yay -S intermodal |
Pre-built binaries
Pre-built binaries for Linux, macOS, and Windows can be found on the releases page.
You can use the following command to download the latest binary for Linux,
MacOS, or Windows, just replace DEST
with the directory where you'd like to
install the imdl
binary:
curl --proto '=https' --tlsv1.2 -sSf https://imdl.io/install.sh | bash -s -- --to DEST
A good place to install personal binaries is ~/bin
, which install.sh
uses
when --to
is not supplied. To create the ~/bin
directory and install imdl
there, do:
curl --proto '=https' --tlsv1.2 -sSf https://imdl.io/install.sh | bash
Additionally, you'll have to add ~/bin
to the PATH
environment variable,
which the system uses to find executables. How to do this depends on the shell.
For sh
, bash
, and zsh
, it should be done in ~/.profile
:
echo 'export PATH=$HOME/bin:$PATH' >> ~/.profile
For fish
, it should be done in ~/.config/fish/config.fish
:
echo 'set -gx PATH ~/bin $PATH' >> ~/.config/fish/config.fish
Cargo
imdl
is written in Rust and can be built from
source and installed with cargo install imdl
. To get Rust, use the
rustup installer.
Shell Completion Scripts
Shell completion scripts for Bash, Zsh, Fish, PowerShell, and Elvish are available in the [completions](completions directory). Please refer to your shell's documentation for how to install them.
The imdl
binary can also generate the same completion scripts at runtime,
using the completions
command:
$ imdl completions --shell bash > imdl.bash
Semantic Versioning
Intermodal follows semantic versioning.
In particular:
- v0.0.X: Breaking changes may be introduced at any time.
- v0.X.Y: Breaking changes may only be introduced with a minor version number bump.
- vX.Y.Z: Breaking changes may only be introduced with a major version number bump
Unstable Features
To avoid premature stabilization and excessive version churn, unstable features
are unavailable unless the --unstable
/ -u
flag is passed, for example
imdl --unstable torrent create .
. Unstable features may be changed or removed
at any time.
Source Signatures
All commits to the intermodal master branch signed with Casey Rodarmor's PGP
key with fingerprint 3259DAEDB29636B0E2025A70556186B153EC6FE0
, which can be
found
on keybase and on
his homepage.
Acknowledgments
The formatting of imdl torrent show
is entirely copied from
torf, an excellent command-line torrent
creator, editor, and viewer.