LibRay aims to be a Libre (FLOSS) Python application for unencrypting, extracting, repackaging, and encrypting PS3 ISOs.
Nichlas Severinsen c3b90319eb Release 0.0.5 | 4 سال پیش | |
---|---|---|
libray | 4 سال پیش | |
.gitignore | 6 سال پیش | |
CHANGELOG.md | 4 سال پیش | |
COPYING | 6 سال پیش | |
LICENSE.txt | 5 سال پیش | |
README.md | 4 سال پیش | |
app.yaml | 5 سال پیش | |
requirements.txt | 4 سال پیش | |
setup.cfg | 5 سال پیش | |
setup.py | 4 سال پیش |
LibRay: A portmanteau of Libre and Blu-Ray
LibRay aims to be a Libre (FLOSS) Python application for unencrypting, extracting, repackaging, and encrypting PS3 ISOs.
A hackable, crossplatform, alternative to ISOTools and ISO-Rebuilder.
Note: this is still a very beta project, report any bug you see!
Note: You will need Python 3, so you might want to use python3
and pip3
instead of python
and pip
depending on your system.
sudo pip install libray
Clone this repository git clone https://notabug.org/necklace/libray
Install dependencies with sudo pip install -r requirements.txt
Run sudo python setup.py install
For Arch or Arch-based GNU/Linux distributions there's an option to install libray from the AUR (Arch User Repository).
You will need an AUR helper (of which there are many).
Then you will need to run the appropriate install command for that AUR helper using libray-git
as package name.
This will essentially automatically do the manual method for you.
libray
is now installed to your path.
usage: libray [-h] -i ISO [-o OUTPUT] [-k IRD] [-d DECRYPTION_KEY] [-v] [-q]
A Libre (FLOSS) Python application for unencrypting, extracting, repackaging,
and encrypting PS3 ISOs
required arguments:
-i ISO, --iso ISO Path to .iso file or stream
optional arguments:
-o OUTPUT, --output OUTPUT
Output filename
-k IRD, --ird IRD Path to .ird file
-d DECRYPTION_KEY, --decryption-key DECRYPTION_KEY
Manually specify key
-v, --verbose Increase verbosity
-q, --quiet Quiet mode, only prints on error
First off, even before you install libray, you will need a compatible Blu-Ray drive that can read PS3 discs.
There's a compiled list of compatible drives here: https://rpcs3.net/quickstart (archive) (see "Compatible Blu-ray disc drives section").
On some systems (eg. Linux), you can decrypt directly from the disc.
libray -i /dev/sr0 -o ps3_game_decrypted.iso
Libray will automatically try to download an IRD decryption file for your iso. If you don't have internet connection, but you do have an .ird file you can specify that:
libray -i /dev/sr0 -k game_ird_file.ird -o ps3_game_decrypted.iso
Alternatively, you can first rip the disc to an ISO file and then decrypt from the ISO file:
libray -i ps3_game.iso -o ps3_game_decrypted.iso
If libray is unable to download an .ird for your game, you could manually give it the key, if you have it:
libray -i ps3_game.iso -d DECRYPTION_KEY -o ps3_game_decrypted.iso
Then, if you want to feed it into RPCS3 just extract the contents of the .ISO:
7z x nfs_ps3_decrypted.iso
And move the resulting folders into the appropriate folder for RPCS3:
This project is Free, Libre, and Open Source Software; FLOSS, licensed under the GNU General Public License version 3. GPLv3.
See also COPYING or LICENSE.txt
Copyright © 2018 - 2019 Nichlas Severinsen
Help! I get
ImportError: No module named Crypto.Cipher
or
ImportError: cannot import name 'byte_string' from 'Crypto.Util.py3compat' (/usr/lib/python3.7/site-packages/Crypto/Util/py3compat.py)
This is due to multiple similarly named python crypto packages, one way to fix it is:
sudo pip uninstall crypto
sudo pip uninstall pycrypto
sudo pip install pycryptodome
If you get any other errors, or have any other problem with libray, please create an issue!
clp = compressed length prefix
7z x output.iso
)