github knutwurst/ps5-ultrapack v2.0.1
2.0.1 — Parent folders, honest progress for .pkg jobs, the real size of a package

latest releases: v2.5.0, v2.4.2, v2.4.1...
one month ago

PS5 UltraPack 2.0.1 — macOS (Apple Silicon).

Fixes for 2.0.0: parent folders work again, the progress bars tell the truth while a .pkg is unpacked and rebuilt, the space check knows how big a package really is, and the password prompt and the backport editor stop getting in the way.

What's fixed

Parent folders: every source in them, one job each. Add job takes a folder of sources again. It searches the folder and its subfolders for game folders, archives (.zip, .rar, .7z; a multi-part RAR set once) and containers (.ffpfs, .ffpfsc, .pkg, .exfat, .ffpkg), and queues one job per source with the changes and output you chose. In 2.0.0 only unpacked game folders counted. An archive that holds a .pkg is unpacked and converted like any other package.

Progress while a .pkg is unpacked.

  • The package tool prints nothing until it is done, and it works in three steps on the temp drive: decrypt the package into a temp file, unpack the game image into a second temp file as large as the game, write the game files. The backend now asks the system how many bytes the tool has written. 2.0.0 counted the folder size, which reached 99 % after the second step and then stood still for the whole third one.
  • The line says where and which step: extract the .pkg on SAMSUNG, step 3 of 3: write the game files (150.2 of 204.5 GB written) @ 170 MB/s ETA 5m.
  • "Temp PFS" moves while MkPFS writes the uncompressed image. MkPFS counts whole files, so a game with one 57 GB file showed "0 % write" for ten minutes. The backend counts the bytes instead: write the PFS image on SAMSUNG: 34.0 of 80.9 GB.
  • A job that unpacks first no longer reports 94 % after the unpack alone. Its bar follows the order the job runs in: unpack, changes, build, compress.
  • The job's bar in the queue no longer jumps. The 30-second heartbeat and the progress lines computed the percentage in two ways, 20 points apart, and adding a folder during a run set the bar to 0 % for a moment. One value feeds the bar, it never moves backward, and messages about other jobs go to the footer.
  • The log and the details pane name the drive a job unpacks to and where it writes.

Space for a .pkg. The data in a package is compressed: a 46 GB .pkg can hold an 81 GB game, and unpacking it needs about twice the game on the temp drive (the unpacked image and the files side by side). The space check now reads the game's size from the package's directory. 2.0.0 used the file size and showed "Temp image ~55 GB" for a job that needed about 170 GB.

A cancelled job keeps what it unpacked. Cancel after the archive was extracted, and the copy stays: Start runs from it again, removing the job deletes it. A job whose copy is gone starts again at its archive instead of failing on a missing source.

Archive passwords. The prompt fits its content (the OK button sat below the window). It only comes up when none of your saved passwords opens the archive; 2.0.0 also asked when a saved password worked but the header size looked too small to trust.

Backport without a libraries field. Add job no longer asks for patched libraries; a job takes the set for its target from Settings › Backport. The field kept coming back after you cleared it. A patched libraries setting that points at the firmware libraries folder is cleared at start, with a line in the log.

Compatibility

  • Same output bytes as 2.0.0: the retail reference .pkg builds with hash 701f28f04b616a3d, unchanged.
  • Settings, queue and history carry over.
  • macOS Apple Silicon.

Verified

  • Every backend suite: 116 fPKG pipeline checks, 37 backport unit tests, 30 archive, 24 CLI guard (incl. the write counter and the MkPFS meter), 15 chain-mode CLI cases, 10 copy-job, 9 chain-item, 9 BPS, 7 backport-libs and the rest.
  • GUI wiring driver: 240 checks.
  • End-to-end with a real game against the built app: 17 checks, folder → .pkg → extract deterministic (701f28f04b616a3d vs 701f28f04b616a3d).
  • The write counter and the three extract steps were measured on a real 46 GB package (81 GB game): 201.7 GB written against 204.5 GB predicted.
  • No new console test since fPKGs built by 1.1.12 launched on FW 11.60.

Install

Ad-hoc signed. On a Mac other than the one it was built on, clear the quarantine flag before the first launch:

xattr -d com.apple.quarantine "PS5 UltraPack.app"

SHA-256 (PS5-UltraPack-2.0.1-macos-arm64.zip): b9aced38559b17958080984fa5f06a108193c44c79016bdd1085260aaa5ee216

Don't miss a new ps5-ultrapack release

NewReleases is sending notifications on new releases.