Repository navigation
🎮 ROM Librarian v1.3.0
🐛 Bug Fix
Fixed version string mismatch that caused v1.2.1.2 users to immediately see an "update available" notification. Internal version now correctly matches the release tag.
✨ New Feature: CLI Mode
Headless Linux support is here!
Run ROM Librarian on NAS devices, servers, or any Linux system without a desktop environment. No display required — tkinter is never imported in CLI mode.
🚀 Usage
./ROM-Librarian --cli
# or
python cli.py📋 Available Commands
rename — Regex batch rename with collision handling
- Patterns:
{name},{ext},{num} - Collision modes:
skip,suffix,keep_first
compress — Create ZIP or 7z archives by extension
- Optional: delete originals after compression
- Preserves directory structure
extract — Extract ZIP/7z archives
- Optional: delete archives after extraction
- Automatic folder creation
dat-rename — Hash-match against No-Intro/MAME DAT files
- Supports CRC32, MD5, SHA1
- Auto-updates CUE files when BIN files are renamed
- Collision handling built-in
⚡ Automation Ready
All commands support --yes flag for non-interactive/scripted workflows:
# Automated ROM processing script
./ROM-Librarian --cli extract --folder /roms --yes
./ROM-Librarian --cli dat-rename --dat "Nintendo - SNES.dat" --folder /roms --yes
./ROM-Librarian --cli compress --folder /roms --format 7z --yesPerfect for cron jobs, SSH sessions, and automation pipelines.