A personal toolbox of standalone, numbered utilities for systems, networking, DevOps, security, automation, media, firmware, and everyday problem-solving. Each tool lives in its own directory with its own README, scripts, and dependencies, so you can copy or use any single one without the rest of the repo.
- Python 87.4%
- Shell 12.3%
- Dockerfile 0.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Deduplicates a Jellyfin TV library by IMDb ID while protecting completeness: it counts seasons/episodes per copy (SxxExx / NxNN) and keeps the most complete copy, only quarantining copies whose episodes are fully contained in the keeper. Groups are skipped for manual review when the most complete copy is materially lower quality than a smaller one, when copies are complementary, or when episodes/quality can't be read. Reuses the movie tool's ffprobe quality logic, whitespace normalization, and the verbose/report/table-summary UX. Adds the tool to the root index. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
| 00-template | ||
| 01-fat32-usb-image-builder | ||
| 02-dedupe-movies | ||
| 03-dedupe-tv-shows | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
jdneer-toolbox
A personal toolbox of standalone, numbered utilities for systems, networking, DevOps, security, automation, media, firmware, and everyday problem-solving. Each tool lives in its own directory with its own README, scripts, and dependencies, so you can copy or use any single one without the rest of the repo.
Tools
| # | Tool | Description |
|---|---|---|
| 00 | template | README template and structure for new tools |
| 01 | fat32-usb-image-builder | Build a mountable FAT32 USB mass-storage image from files in src/ |
| 02 | dedupe-movies | Deduplicate a Jellyfin movie library by IMDb ID, keeping the best-quality copy |
| 03 | dedupe-tv-shows | Deduplicate a Jellyfin TV library by IMDb ID, keeping the most complete copy without losing episodes |
Layout
Each tool lives in its own numbered directory:
NN-short-name/
├── README.md # Tool-specific documentation
├── .gitignore # Tool-specific exclusions
└── ... # The tool itself
The root README.md indexes the tools. The root .gitignore handles global
exclusions (AI artifacts, OS files, IDE files, model downloads). Each tool's own
.gitignore handles its build artifacts and input/output directories.
Adding a new tool
- Copy
00-template/README.mdtoNN-tool-name/README.mdand fill it in. - Add the tool, its own
.gitignore, and any wrappers it needs. - Add a row to the table above.
- Keep the tool self-contained so it can be used independently.
License
Repository
Remote: ssh://git@git.jdneer.com:29500/jd/jdneer-toolbox.git