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 versionConfiguration
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_archiveOr, specify username and password manually:
host: http://nas.local:5000
username: username
password: password
directories:
- NAS/01_documents
- NAS/02_archiveNote: 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 --tagsThen, 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.