DEPRECATED ( renamed to dat/oso )
.___ __
__| _/____ _/ |_ ___________ ____
/ __ |\__ \\ __\/ __ \_ __ \/ _ \
/ /_/ | / __ \| | \ ___/| | \( <_> )
\____ |(____ /__| \___ >__| \____/
\/ \/ \/
Datero is a WIP Python command line tool to download and organize your Dat Roms. As today the tool supports dat-omatic, redump, and translated-english dats. It merges all the dats in a tree folder structure thought to use with Emulators rather than dats. The dat file format must be compatible with ROMVault.
Use pip or download a release and install it (recommended to use a virtual environment):
pip install datero
# Show help
$ datero --help
# List installed seeds
$ datero list
# Doctor the seeds installation
$ datero doctor [seed]
# List available seeds
$ datero seed available
# Seed install
$ datero seed install [seed] [--repository REPOSITORY] [--branch BRANCH]
# Seed remove
$ datero seed remove [seed]
# Seed commands
$ datero [seed] {--fetch|--process} [--filter FILTER]
optional arguments:
-h, --help show the help message and exit, feel free to append to other commands
-v, --verbose verbose output
-q, --quiet quiet output
# Install build
$ pip install build
# Build
$ python -m build
Be careful when updating dats from datomatic, sometimes they put a captcha, and you may be banned if the captcha fails, captcha support is OTW.
- Database initialization !!! (priority)
- Make update rules write to database only when finished
- Better rules update process
- Logging
- Tests
- More dat repositories
- Mega.nz download support (https://pypi.org/project/mega.py/)
- Zippyshare download support (https://pypi.org/project/zippyshare-downloader/)
- Zippyshare download support (https://pypi.org/project/pyOneFichierClient/)
- Configurable folder structure (instead of emulator-focused structure use dat-repositories or viceversa)
- Maybe with a builder, to avoid the need to change the code
- Modular design for repositories (done for seeds, repositores missing)
- Better structure for the downloaders *
- Better command line support
- Migrate to python modules
- Manually Deduplicate dats from command line (easy to implement)
() Done but to be improved* (**) Did it Yay!!!
# Find folders with more than one dat file:
$ find . -type f -iname '*.dat' -printf '%h\n'|sort|uniq -cd
# Find and delete empty folders:
$ find . -type d -empty -print -delete
# Pylint
$ pylint src --errors-only
$ pylint src --disable=all --enable=missing-function-docstring
- Modular design for dat seeds (**)
- Dat structure for ClrMamePro or another dat manager.
- Web interface
- Download from central repositories (an S3 or something like that to prevent overload main sites)
- Lambda to download dats and upload to S3
- Downloading from S3
- Auto-Import MIA Lists (for redump)
- Add [MIA] to dat roms
- Deduplicate dats (**)
- Remove MIA from dats
- .cue Generator
(**) Did it Yay!!!
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate.