Skip to content

asleepynerd/yarrharr

Repository files navigation

YarrHarr

A command-line interface tool for managing media downloads using TMDB metadata.

Features

  • Search for movies and TV shows
  • View detailed information about movies and shows
  • Download movies and TV shows (individual episodes, seasons, or entire series)
  • Optional MP4 conversion support (requires FFmpeg)
  • Cross-platform support (Windows, macOS, Linux)

Dependencies

Required

  • C++17 compatible compiler
  • CMake (3.15 or newer)
  • libcurl
  • nlohmann-json
  • Sleepy API key (email api@sleepy.engineer with subject "Request API Key" and body of why you want said API Key)
  • TMDB API key

Optional

  • FFmpeg (for MP4 conversion)

Installation

macOS

  1. Install dependencies using Homebrew:
brew install cmake libcurl nlohmann-json ffmpeg
  1. Clone the repository:
git clone https://github.com/asleepynerd/yarrharr.git
  1. Build the project (or use provided files in releases)
cd yarrharr
mkdir build
cd build
cmake ..
make
  1. Run the program:
./yarrharr

Linux (Debian/Ubuntu)

  1. Install dependencies using apt:
sudo apt install cmake libcurl-dev nlohmann-json-dev ffmpeg
  1. Clone the repository:
git clone https://github.com/asleepynerd/yarrharr.git
  1. Build the project (or use provided files in releases)
cd yarrharr
mkdir build
cd build
cmake ..
make
  1. Run the program:
./yarrharr
./yarrharr config

Windows

  1. Install prerequisites:

  2. Install dependencies using vcpkg:

.\vcpkg install curl:x64-windows
.\vcpkg install nlohmann-json:x64-windows
  1. Clone the repository:
git clone https://github.com/asleepynerd/yarrharr.git
  1. Build the project (You will not recieve any support for building on Windows, so you will need to build it yourself, issues are welcome on GitHub)
cd yarrharr
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=../vcpkg/scripts/buildsystems/vcpkg.cmake
make
  1. Run the program:
.\yarrharr.exe

Configuration

The program will automatically create a config.json file in the same directory as the executable. You can modify the settings in this file to customize the program's behavior. You will need to obtain an API key from The Movie Database (TMDB) to use the search and download features.

Usage

./yarrharr

License

This project is licensed under the AGPL-3.0 License. See the LICENSE file for details.