Tool To Manage Open-PS2-Loader USB-Drives & Games
Project description
PyOPLM - Python Open PS2 Loader Manager
PyOPLM is a simple, Linux (and Windows using Docker, check this repo for a Docker compose setup with a helper PowerShell script), WIP python app to manage games installed in a directory used by Open PS2 Loader. Supports SMB and USB folders at the moment, hard drive games support is WIP.
IMPORTANT: Only supporting Python version 3.10 and greater at the moment
Features
- Add, remove and rename games in your OPL Directory
- Support for ISO games, UL and POPS games (POPS and PS2 CD bin/cue game install support is only on x86_64 linux)
- Read, write and fix ul.cfg
- List all games on n OPL directory
- init OPL Directory with all needed folders
- Fix game names for all games on drive
- Update game titles and download game art from an online static file storage or local directory
- Comes packaged with Python translations of bchunk, binmerge and cue2pops, making this package officially cross-platform (yay!)
Installation
pip install pyoplm
The latest version is 0.71 (Do not download anything older, this app is under heavy development)
TODO
- CFG file editor, download game data from an open api like RAWG.io
Artwork and title database
Due to this being an open source project, a bit of "self hosting" is required to get these features that require storage to work
In order to have support for artwork downloading and game title fetching, you need to either download one of danielb's OPLM monthly art database backups (i tested this program on OPLM_ART_2023_07.zip) on your system or host the contents of a ZIP backup in a static file storage server (like Google cloud storage buckets, i like using Google cloud because of te free trails but you can place the files anywhere), and give this program the location where the backup is unzipped, and then you can download artwork and update titles for any installed game on your drive.
In order to be able to use storage features, you need to create a file named pyoplm.ini in your OPL directory, and insert your storage URL in there just like in the file example.pyoplm.ini in the root of this repo.
Indexing the zip backups
This program supports indexing for the zip files, which is a much faster way of downloading art and titles from online storages (for local storages too, but it doesn't make too much of a difference in speed). This is necessary because the types of art a game has on an online storage can only be found out through guessing without the data being indexed, which leads to the non-indexed usage of the storage features being much slower.
Perform these steps to enable indexing:
- Go to the page of the Archive.org danielb backup you want to use (i'm using the August 2023 backup) and select the
show allbutton in the download options. - Click the
(view content)button next to the zip file in the list that appears - Copy the link of the page where you will be redirected to after clicking
- Paste this link to the
zip_contents_locationkey of the[STORAGE.INDEXING]section of thepyoplm.inifile in your OPL drive[STORAGE.INDEXING] # URL to the internet archive "(View Contents)" results for the zip backup # Placeholder is the archive to the august 2023 backup zip_contents_location=https://ia802706.us.archive.org/view_archive.php?archive=/4/items/OPLM_ART_2023_07/OPLM_ART_2023_07.zip
- After running pyoplm, the indexing process will be performed and the results will be stored in the
indexed_storage.dbfile in your OPL game directory. This process takes a bit of time but only needs to be performed once - Enjoy 2x+ faster online storage artwork and title download times :)
Usage
The argument opl_dir is mostly required to be supplid by the commands of this app, but can be avoided by putting your OPL Directory in an environment variable named PYOPLM_OPL_DIR
usage: pyoplm [-h] {list,rename,delete,fix,init,add,storage,bintools} ...
positional arguments:
{list,rename,delete,fix,init,add,storage,bintools}
Choose your path...
list List Games on OPL-Drive
rename Change the title of the game corresponding to opl_id
to new_title in the given opl_dir
delete Delete game from Drive
fix rename/fix media filenames
init Initialize OPL folder structure
add Add ISO/CUE PS2 and PSX game to opl_dir
storage Art and title storage-related functionality
bintools Tools for processing cue/bin games
options:
-h, --help show this help message and exit
Thank you danielb for the OPL Manager art database backups, great stuff
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 pyoplm-0.71.tar.gz.
File metadata
- Download URL: pyoplm-0.71.tar.gz
- Upload date:
- Size: 223.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2892ff24980da526c534d48f729e458572314581b33d922a30c7e07df13ed420
|
|
| MD5 |
7d15aa70591b43ef5dcc720c4e73e2b6
|
|
| BLAKE2b-256 |
2b50b28541b91bc84493be48f1d6c833ecaa6f79901c9a1b311a6d9997b47ad8
|
File details
Details for the file pyoplm-0.71-py3-none-any.whl.
File metadata
- Download URL: pyoplm-0.71-py3-none-any.whl
- Upload date:
- Size: 50.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c71ec0dd3c4b8d6d7452c612be4f53cd61309db93cc558429e1bb83495c5b58e
|
|
| MD5 |
2d1fa3361096ea6ad96a41cddc21aa13
|
|
| BLAKE2b-256 |
292133452316c3c907d41d43154d9746750502be3d9a2d7a1cfda57b6ea5b405
|