Important Notice: On PS5, an internet connection is currently required for the app to load. This will be resolved with the next "etaHEN" release. Until then, please ensure you have an active internet connection at launch.
Note
FPKGi (Fake PKG Installer) is an open-source homebrew app for installing modified .pkg files on the PS4 and PS5. Inspired by the original PKGi for PSP, Vita, and PS3, it enables you to manage and install content via .json files—from your device, a local network, or the web—and supports package downloads from your private server. Designed for educational and personal use, FPKGi promotes game preservation in the PlayStation homebrew scene by streamlining content browsing, downloading, and installation. For best performance, offload your files to a NAS and run a web server with Node.js or Python, then pass the content URL to your .json files.
Important
Use FPKGi responsibly and in accordance with the laws of your country. This tool is intended solely for legal, educational, and personal use. Do not use FPKGi for piracy or any other illegal activities. Always download FPKGi from our official GitHub repository, via pkg-zone.com, or through the Homebrew Store, and avoid third-party sources. We assume no responsibility to any damage from malicious downloads and/or legal issues.
- Get the latest compiled package from the Releases or visit pkg-zone.com.
- Choose your preferred method to install the package on your console.
- Alternatively, you can install directly from LightningMods' Homebrew Store.
Launch the app to automatically create the necessary directories and .json
files in the /user/data/FPKGi/
folder.
Edit the .json
files generated at /user/data/FPKGi/ContentJSONs/
to add your content.
You can also generate / populate, and save the necessary .json
file here on my site.
Note
Use bytes for "size"
and for specifying content's region: "USA"
, "JAP"
, "EUR"
, "ASIA"
, or null
.
{
"DATA": {
"https://www.example.com/directLinkToContent.pkg": {
"region": "USA",
"name": "Content Title",
"version": "1.00",
"release": "11-15-2014",
"size": 1000000000,
"min_fw": null,
"cover_url": "https://www.example.com/cover.png"
}
}
}
Important
Please ensure the size is as accurate as possible to prevent issues with downloading! The following fields can be
left as null
where applicable: "version"
, "region"
, "release"
, "min_fw"
, and "cover_url"
if you decide.
To enable web population, edit the config.json
file located at /user/data/FPKGi/
and enable it in the menu.
"CONTENT_URLS": {
"PS1": null,
"PS2": null,
"PSP": null,
"games": null,
"apps": null,
"updates": null,
"DLC": null,
"demos": null,
"homebrew": null,
"emulators": null,
"themes": null
}
"CONTENT_URLS": {
"games": "https://www.example.com/GAMES.json"
}
Unspecified fields will default to loading content from local .json
files.
- Move Through Items: Use (LS)tick/(RS)tick or use the dpad to navigate.
- Select/Download: Press
to select or download content.
- Page & Category Navigation:
- L1/R1: Changes pages.
- L2/R2: Changes category.
- View Details: Press
to view detailed information about the selected content.
- Press the touchpad to search or filter through content by title ID or name.
- Search: Quickly find content using keywords.
- Sorting: Organize content by size, name, region, or title ID.
- Filtering: Filter content by type for faster navigation.
- View Options: Toggle between ascending and descending order.
- Background Music: Toggle the original PKGi background music by nobodo.
- Custom Backgrounds:
Add images via URL or locally (supports
.png
,.bmp
,.jpg
, and.jpeg
).- URL Example:
"background_uri": "https://www.example.com/image.png"
- Local Example:
"background_uri": "/user/data/FPKGi/Backgrounds/custom.png"
- Reset to default:
"background_uri": null
- URL Example:
-
Background Downloads: Supports simultaneous downloads with automatic installation and rest-mode support.
-
Foreground Downloads: Single download support, with a queue feature planned in future updates.
- You can edit the path within the app's settings, or manually through the
config.json
like so:
"downloadPath": "/mnt/usb0/"
"downloadPath": "/user/data/folder/"
- To reset, simply set
null
or type the default path:
"downloadPath": "/user/data/FPKGi/Downloads/"
- You can edit the path within the app's settings, or manually through the
Prerequisites
- Unity Hub & Unity 2017.2.0p1 (or a compatible version)
- PS4 SDK 4.50+ with Unity integration
- PS4 Fake PKG Tools 3.87
- .NET 4.6 Developer Pack
Included Precompiled Dependencies
-
Ensure Prerequisites are Set Up:
- Install Unity Hub and Unity 2017.2.0p1 (or a compatible version).
- Set up the PS4 SDK 4.50+ with the matching Unity integration.
- Download and move the PS4 Fake PKG Tools 3.87 to the SDK.
- Download and install the .NET 4.6 Developer Pack.
-
Open the Project:
- Launch Unity Hub, add your project, and open it.
-
Configure Build Settings:
-
In Unity, go to
File -> Build Settings
. -
Click the
Player Settings
button. -
Expand the
Other Settings
section.- Find
PS4 SDK Override
and set the correct SDK path.
Note: Necessary files are provided in the root of the source!
- Find
-
Expand the
Publishing Settings
section.- Set the paths for the following:
Share File Param
under thePackage
section.
- Set the paths for the following:
-
Under the
Title Voice Recognition Details
section.pronunciation.xml
andpronunciation.sig
-
For more detailed guidance with images, check out RetroGamer74's guide.
If you encounter this error, follow these steps to resolve it:
Warning
THIS IS NOT A FIX OR RECOMMENDED BUT THIS CAN HELP AS A TEMPORARILY
WORKAROUND UNTIL REAOLVED. PLEASE BE ADVISED AND REVERT THIS AFTER!
-
Enable Debug Menu:
- Open the GoldHEN menu.
- Navigate to Debug Settings and enable Full Menu.
-
Configure NP Environment:
- Go to the PS4's settings.
- Navigate to
Debug Settings > PlayStation Network
. - Set NP Environment to
invalid
.
-
Restart the Console.
This solution is sourced from r/ps4homebrew, where several users, including myself, have found it to be effective.
I am planning on looking into an actual fix rather than a work-around for this issue. If you have any ideas,
please make a pull-request
of UnityOrbisBridge plugin and I'll gladly look into it and merge into the branch.
A huge thank you to the following members of the OOSDK Discord for their support:
- TheMagicalBlob, LightningMods, Al-Azif, Da Puppeh, Kernel Panic, lainofthewired, and others.
For more credits, please check out UnityOrbisBridge. If I've missed anyone, feel free to reach out.
For assistance, please leave an issue and/or join my community Discord server and I'll help you out.
This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details.