jamdl/README.md

1.8 KiB

jamdl

A command-line tool to download music from various sources like Apple Music, SoundCloud, and others supported by yt-dlp.

Description

jamdl is a wrapper around popular downloaders (gamdl, scdl, yt-dlp) that automates the process of downloading media and transferring it to a specified location, such as a local directory or a remote NAS via SCP.

Prerequisites

You must have the following command-line tools installed and available in your system's PATH:

  • gamdl (for Apple Music)
  • scdl (for SoundCloud)
  • yt-dlp (for other sources)

Installation

You can install jamdl using cargo:

From source

Clone this repository and install using cargo:

cargo install --path .

From a git repository

You can also install it directly from a git repository:

cargo install --git https://git.shed.gay/chaos/jamdl

Configuration

The first time you run jamdl, it will create a default configuration file at ~/.config/jamdl/config.toml.

You must edit this file to match your setup before you can use jamdl.

The configuration file looks like this:

# Default configuration for jamdl
# Please edit these values to match your setup.

nas_host = "localhost"
nas_user = "your_ssh_user"
nas_path = "/path/on/nas"
cookies_file = "/path/to/your/apple-music-cookies-file.txt"
  • nas_host: The hostname or IP address of your NAS. If set to "localhost", files will be copied locally instead of using SCP.
  • nas_user: The SSH username for your NAS.
  • nas_path: The destination path on your NAS or local filesystem.
  • cookies_file: The path to your Apple Music cookies file for gamdl.

Usage

Once configured, you can download media by passing a URL to jamdl:

jamdl "https://music.apple.com/us/album/some-album/123456789"