Project

sdls

0.0
No release in over 3 years
A command-line interface for managing downloads on Synology Download Station.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

~> 2.0
~> 1.3
~> 0.23
 Project Readme

sdls - Synology Download Station CLI

sdls is a command-line interface for adding download tasks to Synology Download Station using magnet links. It provides a simple, scriptable way to queue downloads from your terminal, including an (optional) integration with 1Password for authentication (including 2FA).

Installation

gem install sdls

Usage

❯ sdls
Commands:
  sdls add [MAGNET]    # Add a magnet link to Synology Download Station
  sdls config          # Display the current configuration
  sdls connect         # Verify connectivity and authentication
  sdls help [COMMAND]  # Describe available commands or one specific command
  sdls version         # Display the SDLS tool version

Configuration

Configure via ~/.config/sdls.yml.

You may rely on the 1Password integration (this will read the credentials from the 1Password item):

host: http://nas.local:5000
op_item_name: NameOf1PasswordItem
directories:
  - NAS/01_documents
  - NAS/02_archive

Or, specify username and password manually:

host: http://nas.local:5000
username: username
password: password
directories:
  - NAS/01_documents
  - NAS/02_archive

Note: Set SDLS_CONFIG_PATH to customize the config path.

Development

Run bin/sdls to execute the CLI.

Run just test to lint and test.

Releasing a new version

On the main branch, add the changes to CHANGELOG.md.

Then, bump the version in version.rb and sdls.gemspec.

Then, run bundle, which will update Gemfile.lock.

With these four changed and staged files, tag the new version:

git commit -m "Release v0.1.0"
git tag v0.1.0
git push origin main --tags

Then, create a new release and choose the tag (e.g., v0.1.0) and title (e.g., v0.1.0). Copy the description from CHANGELOG.md.

Finally, run gem release.