To download videos hosted by Reddit, you need to have ffmpeg installed. Follow this link for installation instructions.
You can download release binaries here
If you are a macports user on macOS, you can install reddsaver using port
:
sudo port selfudpate
sudo port install reddsaver
If you are a homebrew user on macOS, you can install using brew tap
:
shell
brew tap manojkarthick/reddsaver
brew install reddsaver
If you are an ArchLinux user, then you can use a tool like yay
or paru
to install it from the AUR:
shell script
yay -S reddsaver
If you already have Rust installed, you can also install using cargo
:
shell script
cargo install reddsaver
If you are a nix user, you can install reddsaver from nixpkgs
shell script
nix-env --install reddsaver
or, if you manage your installation using home-manager, add to your home.packages
:
shell script
home.packages = [
pkgs.reddsaver
];
Make sure you have rustc v1.50.0
and cargo installed on your machine.
shell script
git clone https://github.com/manojkarthick/reddsaver.git
cargo build --release
./target/release/reddsaver
Pre-built docker images are available on Docker Hub
shell script
mkdir -pv data/
docker run --rm \
--volume="$PWD/data:/app/data" \
--volume="$PWD/reddsaver.env:/app/reddsaver.env" \
manojkarthick/reddsaver:latest -d /app/data -e /app/reddsaver.env
Create a .env file with the following keys, for example reddsaver.env
:
shell script
CLIENT_ID="<client_id>"
CLIENT_SECRET="<client_secret>"
USERNAME="<username>"
PASSWORD="<password>"
NOTE: If you have 2FA enabled, please make sure you set PASSWORD=<password>:<2FA_TOTP_token>
instead
Run the app! ```shell script
mkdir -pv reddsaver/
reddsaver --help
USERNAME
variable is being overriden byreddsaver -e reddsaver.env -d reddsaver --show-config
reddsaver -e reddsaver.env -d reddsaver
reddsaver -e reddsaver.env -d reddsaver --upvoted ```
NOTE: When running the application beyond the first time, if you use the directory as the initial run, the application will skip downloading the images that have already been downloaded.
View it in action here:
Optionally override the values for the directory to save and the env file to read from:
```shell script ReddSaver 0.4.0 Manoj Karthick Selva Kumar Simple CLI tool to download saved media from Reddit
USAGE: reddsaver [FLAGS] [OPTIONS]
FLAGS: -r, --dry-run Dry run and print the URLs of saved media to download -h, --help Prints help information -H, --human-readable Use human readable names for files -s, --show-config Show the current config being used -U, --undo Unsave or remote upvote for post after processing -u, --upvoted Download media from upvoted posts -V, --version Prints version information
OPTIONS:
-d, --data-dir
Some points to note:
--human-readable
flag.--show-config
flag.To cross-compile for raspberry pi, this project uses rust-cross. Make sure you have docker installed on your development machine.
docker build -t rust-rpi-zerow:v1-openssl -f Dockerfile.raspberrypizerow .
Cross.toml
configurationcross build --target arm-unknown-linux-gnueabi --release
to build the projecttarget/arm-unknown-linux-gnueabi/release/