π¦ Feature Request: FPKG Output Support (Folder / .exfat / .ffpfsc β FPKG)
First of all β MkPFS is an excellent tool. The cross-platform Python approach, the clean CLI design, the compression statistics, the batch command, the --deep unpack β it's clear a lot of thought went into making this practical and composable. Thank you for building and maintaining it! π
Summary
Would you consider adding FPKG output as a target format? Concretely:
Folder β FPKG
.exfat β FPKG
.ffpfsc β FPKG
Motivation
Right now MkPFS handles the inner PFS layer of the PS5 package pipeline beautifully β folder scanning, exFAT wrapping, PFSC compression, verification. But to get to an installable FPKG on a debug PS5, users still need a separate tool for the outer PKG wrapper (FIH header, outer PFS, passcode, signing).
Adding FPKG output would let MkPFS cover the full pipeline end-to-end in a single command, which would be especially valuable for Linux users who currently have no native FPKG builder (the main alternative, PSVIETHOA FPKG Builder, targets macOS and Windows only).
What this would involve
The FPKG outer wrapper requires:
- A FIH (debug) header with
param.json metadata (title ID, content ID, version, app type, SDK version, passcode)
- An outer PFS image containing the inner PFS / exFAT payload
- PLAINTEXT_NOAUTH signing (for debug FPKGs β signed byte
0x00, no AES-XTS on the outer layer)
- Optional Native AES-XTS encryption for the outer layer
- PlayGo chunk map generation (automatic, 1β64 chunks)
MkPFS already has the hard part (the inner PFS). The outer wrapper is well-documented in the community (PSDevWiki PKG files, LibOrbisPkg, LibProsperoPkg β already in your Related Projects index).
Proposed CLI shape (just a suggestion)
# Folder β FPKG in one pass
mkpfs pack fpkg ./PPSA12345-app ./PPSA12345.pkg
# .exfat β FPKG
mkpfs pack fpkg ./PPSA12345.exfat ./PPSA12345.pkg
# .ffpfsc β FPKG
mkpfs pack fpkg ./PPSA12345.ffpfsc ./PPSA12345.pkg
Notes
- The resulting FPKG would be a debug package (FIH image) β installable only on a PS5 with debug mode enabled, same as existing tools.
- This would make MkPFS the only cross-platform (Windows / macOS / Linux) FPKG builder, which is a meaningful gap in the current tooling landscape.
Happy to help test if you decide to explore this. Thanks again for the great work! π
π¦ Feature Request: FPKG Output Support (Folder / .exfat / .ffpfsc β FPKG)
First of all β MkPFS is an excellent tool. The cross-platform Python approach, the clean CLI design, the compression statistics, the
batchcommand, the--deepunpack β it's clear a lot of thought went into making this practical and composable. Thank you for building and maintaining it! πSummary
Would you consider adding FPKG output as a target format? Concretely:
Folder β FPKG.exfat β FPKG.ffpfsc β FPKGMotivation
Right now MkPFS handles the inner PFS layer of the PS5 package pipeline beautifully β folder scanning, exFAT wrapping, PFSC compression, verification. But to get to an installable FPKG on a debug PS5, users still need a separate tool for the outer PKG wrapper (FIH header, outer PFS, passcode, signing).
Adding FPKG output would let MkPFS cover the full pipeline end-to-end in a single command, which would be especially valuable for Linux users who currently have no native FPKG builder (the main alternative, PSVIETHOA FPKG Builder, targets macOS and Windows only).
What this would involve
The FPKG outer wrapper requires:
param.jsonmetadata (title ID, content ID, version, app type, SDK version, passcode)0x00, no AES-XTS on the outer layer)MkPFS already has the hard part (the inner PFS). The outer wrapper is well-documented in the community (PSDevWiki PKG files, LibOrbisPkg, LibProsperoPkg β already in your Related Projects index).
Proposed CLI shape (just a suggestion)
Notes
Happy to help test if you decide to explore this. Thanks again for the great work! π