Files
PSFree-Enhanced-Dockerized/CacheMaker.py
ArabPixel e344569b0a Add Linux support + improvements
Linux payloads from ps4boot has been added for all firmware and southbridges 7.00 - 12.52.

Improved payloads tabs by design and now it keeps that chosen tab opened by using localStorage.

Added new options in settings to choose the Southbridge and the PS4 model to display the correct payloads.

loading .elf for linux payload when using the GoldHEN's BinLoader and .bin for the webkit exploit.

Updated Arabic translations for the new texts.
2025-12-24 16:27:22 +01:00

46 lines
1.9 KiB
Python

################# By Nazky ##############
import os
from datetime import datetime
# Configuration
EXCLUDED_DIRS = {'.venv', '.git', 'noneed', '.github'}
EXCLUDED_EXTENSIONS = {
'.bat', '.txt', '.exe', '.mp4', '.py', '.bak', '.zip',
'.mp3', '.sh', '.h', '.c', '.o', '.ld', '.md', '.d'
}
EXCLUDED_FILES = {'.gitignore', 'COPYING', 'LICENSE', 'MAKEFILE', 'dockerfile', '.gitinclude', '.prettierrc', '.keepgithub'}
OUTPUT_FILE = 'PSFree.manifest'
def create_manifest():
root_dir = os.path.dirname(os.path.abspath(__file__))
manifest_path = os.path.join(root_dir, OUTPUT_FILE)
with open(manifest_path, 'w', encoding='utf-8') as f:
# Write header
f.write("CACHE MANIFEST\n")
f.write(f"# v1\n")
f.write(f"# Generated on {datetime.now()}\n\n")
f.write("CACHE:\n")
# Walk through all files
for dirpath, dirnames, filenames in os.walk(root_dir):
# Remove excluded directories (modifies the dirnames list in-place)
dirnames[:] = [d for d in dirnames if d not in EXCLUDED_DIRS]
for filename in filenames:
filepath = os.path.join(dirpath, filename)
relpath = os.path.relpath(filepath, root_dir)
# Skip excluded files, extensions and the manifest file itself
ext = os.path.splitext(filename)[1].lower()
if (ext in EXCLUDED_EXTENSIONS or
filename in EXCLUDED_FILES or
filename == OUTPUT_FILE):
continue
# Write relative path to manifest
f.write(f"{relpath.replace(os.sep, '/')}\n")
# Write network section
f.write("\nNETWORK:\n")
f.write("*\n")
print(f"Successfully created {OUTPUT_FILE}")
print(f"Excluded folders: {', '.join(EXCLUDED_DIRS)}")
if __name__ == "__main__":
create_manifest()