A simple, fast and interruptable download accelerator, written in Rust
(A special thanks to @frankirito for this awesome logo !)
- Simple: a command line to manage easily your downloads ;
- Fast: multithreading support.
NOTE: Snatch is on alpha version. This version runs well on remote contents that length is known before the download (by the content-length
header from the server response) - also, the Interruptable feature is not implemented yet.
- Please to install Rust and Cargo using rustup ;
- Install Snatch:
cargo install --git https://github.com/derniercri/snatch.git
; - Enjoy !
Usage:
snatch [OPTIONS]
Snatch, a simple, fast and interruptable download accelerator, written in Rust.
optional arguments:
-h,--help show this help message and exit
-f,--file FILE The local file to save the remote content file
-t,--threads THREADS Number of threads available to download
-u,--url URL Remote content URL to download
-v,--verbose Verbose mode
- A simple PDF file
- Big Buck Bunny, a big free mp4 file
- The cat DNA, a big .gz file
- A big PDF file from Princeton
You want to contribute to Snatch ?
This is a list of ways you can help us out :
- improve the documentation,
- improve the CLI,
- add new features (please to see our issues),
- report bugs.
If you want to create a pull request, this is the procedure to make it great:
- create an issue to explain the problem you encountered (except for typo),
- fork the project,
- create a local branch to make changes (from our
devel
branch), - test your changes,
- create a pull request (please to compare with our
devel
branch), - explain your changes,
- submit !
Thank you for your interest in contributing to Snatch ! :-D
fatal error: 'openssl/hmac.h' file not found
If you are on a GNU/Linux distribution (like Ubuntu), please installlibssl-dev
.
If you are on macOS, please installopenssl
and check your OpenSSL configuration:
brew install openssl
export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include
export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib
export DEP_OPENSSL_INCLUDE=`brew --prefix openssl`/include