An open source browser extension for adding/managing download tasks to your Synology DiskStation.
NAS Download Manager is in maintenance mode. See the announcement for details.
If you're here because of an issue with the extension, please check the FAQ first. If you can't find an answer there, feel free to open an issue!
NAS Download Manager allows you to add and manage your download tasks on your Synology DiskStation right from your browser. It requires a Synology NAS with DSM version 4 or higher.
Please note that NAS Download Manager is not an official Synology offering.
<video>
and <audio>
tags) and files (e.g. .torrent
files).magnet:
) in the extension rather than a desktop application.These browsers are not officially supported and the extension is untested with them, but there are ways to install it.
There are currently no plans to support the following browsers.
NAS Download Manager needs your login credentials to communicate with your NAS. It doesn't collect, store or transmit any other information. Read more.
Please note that development is not actively supported on Windows. Some of the below commands may fail and require manually invoking an analogous Windows command instead.
Dependencies are managed with Yarn. Install it if you don't already have it.
These instructions describe how to build and automatically re-build the assets for the extension for quick iteration during active development. For building, optimizing and packaging the extension for distribution, see the next section.
Please note that while the build tasks will auto-recompile, the browser may not pick up changes automatically. In particular, changes to code running in the extension's background generally requires you to explicitly refresh the extension (for which there is usually a button in the debugging interface). Changes to language support may require you to remove the development extension entirely and re-add it.
Install dependencies.
yarn
Start a build to watch files and auto-recompile code on change.
yarn watch
In your browser, navigate to the extension debugging page and open manifest.json
.
Firefox: about:debugging
> This Firefox > Load Temporary Add-on...
Chrome: about:extensions
> Enable "Developer mode" > Load unpacked
Install dependencies.
yarn
Build and optimize all assets.
yarn build
Zip all assets into a file suitable for distribution.
yarn zip
(Optional) Zip all source code into a file suitable for distribution.
yarn zip-sources
I need help localizing NAS Download Manager! Read in detail about how to localize WebExtensions, or skip to the sections below for short summaries.
In order to add the new language, base your translation file off the English messages file.
_locales/en/messages.json
into a new file at _locales/<your language code>/messages.json
.message
field in each item with your translation.src/common/moment.ts
, add a new import line like import "moment/locale/<your language code>";
.There are automated checks to ensure that you're only defining translated strings that the extension actually uses.
If you're adding more strings for an incomplete translation, you can use ./scripts/diff-messages <your language code>
to get a list of all the entries you need to add to the messages.json
in a format that is easily copy-pasted:
$ ./scripts/diff-messages ru
"Badge_shows": {
"message": "Badge shows",
"description": "Prefix text for badge-display-type dropdown."
},