Minerva DPN Worker, for more information see https://minerva-worker.org
Project description
Minerva Worker
Preserving Myrient's legacy, one file at a time.
Myrient is shutting down. Minerva is a volunteer-driven effort to archive its entire collection before it goes offline. Run a script, share your bandwidth, help preserve the archive.
Installation
Download and install the Python script from PIP/PyPI:
$ pip install minerva-worker
[!NOTE] If pip gives you a warning about a path not being in your PATH environment variable then promptly add that path then close all open command prompt Windows, or running
minervawon't work as it will not be recognized as a program.
You now have the minerva package installed - Voilà 🎉!
Get started by running minerva in your Terminal or Windows Run.
For configuration options, see help and options by running minerva --help.
Alternatively, a Windows EXE is available on the Releases page, simply run it to begin!
Usage
It's very easy to use. Simply run the minerva.exe file, or run minerva in your Terminal/Command Prompt.
You can configure the worker settings by running minerva run --help to see what configuration options
you can change. If you have a great computer and network, it's recommended to bump up the -c and -b
options.
[!TIP] It's recommended to keep -c smaller or the same as -b.
How it works
The worker script asks the minerva server for jobs to download. The server gives active workers random missing needed file URLs to download. When the worker is given a job, it temporarily downloads the file and uploads it to the minerva file servers. Once the file is downloaded, it is deleted from your machine.
[!TIP] If you also want a copy of the files, use the
--keep-filessetting.
Jobs are given exclusively to each worker, no two workers download the same file at the same time. However, to verify that uploads aren't corrupted, each job gets given (eventually) to a second worker. Both uploads are then confirmed and if both workers give back the same file to the minerva file server, then the job is marked as complete and verified.
[!NOTE] You may see 409 Conflict errors on upload, this happens when either you or another worker had mismatching files uploaded. Just ignore these error's and let the worker continue. If you suspect every file has this issue, please verify your network connection is stable and verify your downloads arent corrupted.
Discord Authentication
When using the minerva worker, you are prompted upon startup to login and authorize with Discord. This is to authenticate unique users on the minerva server, to know who jobs are given to, and to use your username and avatar in the worker dashboard leaderboards.
This does not give Minerva, this script, or anyone else access to your account, or any permissions.
Development
- Install uv
uv sync --all-extras --all-groups.venv\Scripts\activate(orsource .venv/bin/activateon macOS and Linux)uv tool install pre-commit --with pre-commit-uv --force-reinstallpre-commit install
Now feel free to work on the project however you like, all code will be checked before committing.
Credit
- [bl791] for the original one-file script.
- Puyodead1 for their improved rich interface and speedups.
- rlaphoenix for further improvements, bug fixes, support.
- wikipiti for the aria2 control file parsing code.
Licensing
This software is licensed under the terms of CC0 1.0 Universal. You can find a copy of the license in the LICENSE file in the root folder
© rlaphoenix 2026
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file minerva_worker-1.2.4.tar.gz.
File metadata
- Download URL: minerva_worker-1.2.4.tar.gz
- Upload date:
- Size: 26.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aea18d9f4661156eb26dfb56744364066576decadd78342c133e99fa6d19eeec
|
|
| MD5 |
5e067b8926e55d1d07d06cf5eaf4b376
|
|
| BLAKE2b-256 |
49e8295b798a941a4419c6e50a356aaa4561e9fd3cbd04d83e1c92250b7a8475
|
File details
Details for the file minerva_worker-1.2.4-py3-none-any.whl.
File metadata
- Download URL: minerva_worker-1.2.4-py3-none-any.whl
- Upload date:
- Size: 21.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47930468eaebf21a040bbbc1ef4db5e2e4771f7af3a05c16adb5a8c875b14d49
|
|
| MD5 |
5512fb05379e755eea9352a41e3d47d8
|
|
| BLAKE2b-256 |
0bc7e3a1d355b934e03f3154ffca9f63903ae2e5326a5730cf9e20d37270de3a
|