How to Use shadPS4 on Linux (with a Complete Bloodborne Guide)

ShadPS4 ON LINUX

shadPS4 is a free, open-source PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD, and Linux is one of its best-supported platforms. This guide covers the current setup as of November 2026: installing the launcher, adding firmware files and games, tuning settings, and getting Bloodborne running well.

What shadPS4 is and where it stands today

The current stable release is v0.21.0 “Until Mavethee Dawn”, published on 30 October 2026. Releases now arrive every few weeks, with dated pre-release (nightly) builds in between.

shadPS4

App v0.21.0 Windows, Linux, macOS

Open-source PlayStation 4 emulator for Windows, Linux and macOS, written in C++. Early in development.

View app

Three things have changed since most older guides were written, and they are the usual reason an old tutorial no longer matches what you see on screen:

  • The emulator and its interface are now separate programs. The core emulator is a command-line program. The graphical interface is a separate app called shadPS4 QtLauncher, which downloads and manages emulator versions for you.
  • PKG installation is gone. There is no “Install Packages (PKG)” menu any more. Games are added as decrypted folders named after their title ID, such as CUSA03173.
  • Online play exists. shadNet, the project’s own replacement for PlayStation Network, first appeared in v0.17.0 in July 2026 and has grown with each release since. It is early, but friends, score posting and some online play work.

The project still describes itself as early in development. Many games do not boot, and those that do can have glitches. Check the official compatibility list before you spend an evening on a particular title. Bloodborne is the most heavily tested game on the emulator. The official list still rates it “Ingame” rather than “Playable” on Linux, which means it reaches gameplay and can be finished, but with known issues that the Bloodborne section below works around.

System requirements on Linux

shadPS4 needs a 64-bit x86 processor with AVX2-era instructions and a graphics card with a Vulkan 1.3 driver. The official minimums come from the project’s quickstart guide; the Bloodborne column is community guidance, not an official figure.

Component Official minimum Sensible target for Bloodborne
CPU 4 cores / 6 threads, above 2.5 GHz, x86-64-v3 (Intel Haswell or newer, AMD Excavator or newer) A recent 6-core or 8-core desktop chip (Ryzen 5 5600 class or better)
GPU 2 GB VRAM, Vulkan 1.3 with VK_KHR_swapchain and VK_KHR_push_descriptor 8 GB VRAM or more; the game is known to overuse VRAM
RAM 8 GB 16 GB, ideally 32 GB
OS Ubuntu 22.04 or an equivalent distro Any current distro with up-to-date Mesa or NVIDIA drivers
Storage Depends on the game Roughly 30 to 45 GB for Bloodborne with its update and DLC, on an SSD

ARM machines are not supported. That rules out the Raspberry Pi and ARM laptops.

Check your CPU

Run this to confirm your processor meets the x86-64-v3 baseline. If the line says supported, you are fine.

/lib64/ld-linux-x86-64.so.2 --help | grep x86-64-v3

Install and check Vulkan drivers

Most emulator problems on Linux come from an old or missing Vulkan driver. Install the driver and the test tool for your distro:

# Ubuntu, Debian, Linux Mint, Pop!_OS (AMD and Intel)
sudo apt install mesa-vulkan-drivers vulkan-tools

# Fedora (AMD and Intel)
sudo dnf install mesa-vulkan-drivers vulkan-tools

# Arch, CachyOS, EndeavourOS, Manjaro
sudo pacman -S vulkan-tools vulkan-radeon    # AMD
sudo pacman -S vulkan-tools vulkan-intel     # Intel
sudo pacman -S vulkan-tools nvidia-utils     # NVIDIA

NVIDIA users on Ubuntu and Fedora should install the proprietary driver through their distro’s driver tool rather than the open-source nouveau driver. Then check what Vulkan reports:

vulkaninfo --summary

Look for your graphics card by name and an apiVersion of 1.3 or higher. If the only device listed is llvmpipe, your system is using software rendering and the emulator will be unusably slow.

Update drivers for every GPU in the machine, including the integrated one. The shadPS4 team warns that an outdated driver on an unused card can still interfere.

Installing shadPS4 on Linux

The official AppImage of shadPS4 QtLauncher is the best choice for most people, because it is the only route that lets you switch emulator versions from inside the app. There are four ways to install.

Method Maintained by Switch emulator versions Best for
QtLauncher AppImage shadPS4 team Yes, built-in Version Manager Almost everyone
Flatpak from Flathub Flathub packagers No, locked to the bundled stable release Immutable distros such as Bazzite, Fedora Silverblue and SteamOS
AUR packages Community Depends on the package Arch users who accept unofficial builds
Build from source You Yes Developers and testers

Method 1: QtLauncher AppImage (recommended)

  1. Open the shadPS4 downloads page or the QtLauncher releases page on GitHub.
  2. Under Assets, download the file with linux in its name. It is a zip archive.
  3. Extract it somewhere inside your home folder and make the AppImage executable. The file name can change between builds, so adjust it to match what you extracted.
mkdir -p ~/Emulation/shadps4
cd ~/Emulation/shadps4
unzip ~/Downloads/shadPS4QtLauncher-linux-*.zip
chmod +x *.AppImage
./shadPS4QtLauncher-qt.AppImage

Do not put the launcher, your games or any shadPS4 folder in a location that needs root access, such as /opt or /usr. The project warns that this causes odd emulation problems or stops the emulator from starting.

If the AppImage refuses to start with a FUSE error, install FUSE 2 or bypass it:

sudo apt install libfuse2t64     # Ubuntu 24.04 and newer
sudo apt install libfuse2        # Ubuntu 22.04, Debian 12
sudo dnf install fuse-libs       # Fedora
sudo pacman -S fuse2             # Arch

# Or run without FUSE at all
./shadPS4QtLauncher-qt.AppImage --appimage-extract-and-run

Download an emulator version

The launcher is only the interface. On first run you still need to fetch the emulator itself.

  1. Click Version Manager at the top right of the launcher window.
  2. Click Refresh List so the list of stable and nightly builds is current.
  3. Select a version, click Yes, wait for the download, then click OK.
  4. Close the Version Manager.

Start with the latest stable release, v0.21.0 at the time of writing. Nightly builds carry newer fixes and occasional regressions. If you install more than one version, switch between them with the version selector above the Version Manager button. That is useful when a game runs better on an older release.

Method 2: Flatpak

The Flathub package bundles the launcher with the latest stable emulator.

flatpak install flathub net.shadps4.shadPS4
flatpak run net.shadps4.shadPS4

Two limits apply. The Flatpak cannot download or run other emulator versions, and it can lag behind: on 10 November 2026 Flathub still listed 0.20.0 while 0.21.0 had been out for eleven days. Flatpak apps are also sandboxed, so if your games live on another drive, grant access with Flatseal or with flatpak override --user --filesystem=/path/to/games net.shadps4.shadPS4.

Method 3: AUR packages on Arch

The AUR has shadps4-qtlauncher-bin, shadps4-qtlauncher-git and shadps4-git. None is maintained by the shadPS4 developers, and the official build notes point out that shadps4-git compiles with your default compiler, usually GCC, rather than the Clang version the team tests with. Use the AppImage first if you hit a bug.

Method 4: Build from source

Building gives you the command-line emulator. The team builds with Clang 23, and GCC 14 is also tested. These commands come from the official Linux build guide.

# Fedora dependencies
sudo dnf install ninja-build clang git cmake libatomic alsa-lib-devel \
    pipewire-jack-audio-connection-kit-devel openal-soft-devel \
    openssl-devel libevdev-devel libudev-devel libXext-devel \
    libXcursor-devel libXi-devel libXrandr-devel libXScrnSaver-devel \
    vulkan-devel vulkan-validation-layers libpng-devel libuuid-devel

# Arch dependencies
sudo pacman -S base-devel clang git cmake sndio jack2 openal \
    sdl2 vulkan-validation-layers libpng

# Clone with submodules and build
git clone --recursive https://github.com/shadps4-emu/shadPS4.git
cd shadPS4
cmake -S . -B build/ -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
cmake --build ./build --parallel$(nproc)
./build/shadps4

On Ubuntu 24.04 the default clang package is still Clang 18, so the guide adds the LLVM 23 repository from apt.llvm.org first and builds with clang-23. On immutable systems such as SteamOS or Fedora Kinoite, build inside a distrobox container. If your computer freezes during the build, drop --parallel$(nproc).

To use a self-built binary with the launcher, add it in the Version Manager as a custom version.

First-time setup: firmware files and games

shadPS4 ships with no Sony code and no games, so everything in this section comes from your own console. You need a jailbroken PS4 to dump the firmware modules, fonts and games you own. The project does not support pirated copies and its Discord and GitHub will not help with them.

Where shadPS4 keeps its files

On first launch the launcher asks you to pick a games folder and a folder for additional content (DLC). Everything else lives in the shadPS4 user folder.

What Location on Linux
User folder (AppImage and source builds) ~/.local/share/shadPS4
User folder (Flatpak, usual sandbox path) ~/.var/app/net.shadps4.shadPS4/data/shadPS4
Firmware modules sys_modules inside the user folder
Firmware fonts fonts inside the user folder, unless you set another path
DLC licences licenses inside the user folder
Save data savedata/1/<title ID> inside the user folder
Log of the last run log/shad_log.txt inside the user folder

The quickest way to find the user folder is from the launcher: right-click any game, choose Open Folder → Open Log Folder, then go up one level.

Dump the firmware modules

shadPS4 reimplements most of the PS4 system libraries itself, but a few are still loaded straight from real firmware files. Games crash, lose audio or show no text without them.

  1. Jailbreak your PS4 and start an FTP server that can decrypt files. The team recommends GoldHEN, which includes one.
  2. Connect from your PC with an FTP client such as FileZilla.
  3. Copy everything in /system/common/lib/ on the console to your PC.
  4. Place the files in the sys_modules folder.

The modules currently in use, per the official quickstart, are:

libSceAt9Enc.sprx             libSceAudiodec.sprx
libSceAudiodecCpu.sprx        libSceAudiodecCpuDdp.sprx
libSceAudiodecCpuDtsHdLbr.sprx  libSceAudiodecCpuHevag.sprx
libSceAudiodecCpuM4aac.sprx   libSceCesCs.sprx
libSceFont.sprx               libSceFontFt.sprx
libSceFreeTypeOl.sprx         libSceFreeTypeOptOl.sprx
libSceFreeTypeOt.sprx         libSceJpegDec.sprx
libSceJpegEnc.sprx            libSceJson.sprx
libSceJson2.sprx              libSceLibcInternal.sprx
libSceNgs2.sprx               libScePngEnc.sprx
libSceRtc.sprx                libSceRudp.sprx
libSceSystemGesture.sprx      libSceUlt.sprx
libSceWkFontConfig.sprx       libSceXml.sprx

Since v0.18.0, libSceAvPlayer.sprx and libSceAvPlayerStreaming.sprx can also be loaded to fix broken videos in some games. Copying the whole lib folder covers all of these.

Dump the firmware fonts

  1. Copy the font folder from /preinst/common/ on the console into the shadPS4 fonts folder.
  2. Copy the font2 folder from /system/common/ into the same place.

The fonts folder should end up containing both font and font2.

Add your games

Games are plain decrypted folders. The old PKG installer was removed, so a .pkg file cannot be loaded directly.

  1. Dump the game on your PS4. Itemzflow is the simplest homebrew app for this. ftpdump is an alternative that writes straight to your PC over FTP; use a wired connection, because Wi-Fi is slow.
  2. Make sure the folder is named after the title ID, in the form CUSAxxxxx. Itemzflow names it correctly. ftpdump adds -app to the name, which you must remove.
  3. Copy the folder into your games folder, or add its parent folder under Settings → Paths.
  4. The game appears in the launcher list.

Add updates and DLC

  • Updates: name the dumped update folder CUSAxxxxx-patch or CUSAxxxxx-UPDATE and place it beside the base game in the games folder. The launcher then shows the updated version number.
  • DLC that is a separate download: create a folder named after the title ID inside your additional content folder and copy the dumped DLC into it.
  • DLC that is only a licence: copy the files from user/home/<id>/license on the console into the shadPS4 licenses folder.

A finished games folder looks like this:

~/Games/PS4/
├── CUSA03173/          base game
└── CUSA03173-patch/    update

Since v0.17.0 shadPS4 can also load a game packed into a single ZArchive file instead of a folder with thousands of files. That is optional and mostly helps on slow drives.

Trophies (optional)

Trophies need a key from your console. Copy SceShellCore.elf from /system/vsh over FTP, then run the team’s tropy_key_export.exe tool on it. The tool is Windows-only, so on Linux run it through Wine. Paste the key into the launcher’s settings.

Configuring the emulator

The defaults are sensible, and the official advice is to leave advanced options alone unless a game needs them. These are the settings worth knowing. Menu names follow the official settings guide; the launcher changes often, so a label may sit in a slightly different place in your build.

General

  • Settings → General → Display Compatibility Data adds a column showing each game’s status from the official compatibility list. Click a status to open its report on GitHub.
  • Update channel lets you choose between Release and Nightly, and whether to check at startup.
  • Enable fullscreen starts games in fullscreen. F11 toggles it while playing.
  • Enable Separate Update folder keeps the base game and its update apart, so you can test both versions.
  • Console language sets the language games use. Emulator language sets the language of the launcher.

Graphics

  • Graphics device: on a laptop or desktop with two GPUs, pick the dedicated card rather than leaving it on automatic.
  • Window size only changes the window. It does not change the resolution a game renders at. Higher resolutions come from per-game patches.
  • vBlank Divider and the Advanced group: leave these alone unless a specific game guide tells you otherwise.
  • Readbacks: an experimental option that copies data the game’s GPU code produced back to the CPU. It is off by default because it costs performance. Bloodborne needs it, as covered below.

Paths

Settings → Paths lists your game folders. You can add several, which helps if your games are split across drives.

Controllers, keyboard and mouse

Xbox and DualShock controllers work without setup. DualSense controllers are handled the same way through SDL. Since v0.16.0 the emulator also supports local multiplayer with several controllers, and an option to swap the confirm button between Cross and Circle.

Keyboard and mouse bindings are edited from the controller button in the launcher’s settings. Bindings are saved per game and support up to three keys per action, mouse buttons, and mouse movement mapped to a stick. The default keyboard layout is:

PS4 control Default key
Left stick W A S D
Right stick I J K L
Triangle / Circle / Cross / Square Numpad 8 / 6 / 2 / 4, or C / B / N / V
D-pad Arrow keys
Options Enter
Touchpad Space
L1 / R1 Q / U
L2 / R2 E / O
L3 / R3 X / M

Hotkeys while a game is running

Key Action
F10 FPS counter
Ctrl + F10 Video debug information
F11 Fullscreen
F12 RenderDoc capture, or a game-only screenshot when RenderDoc is not installed

Per-game settings, cheats and patches

Right-click a game in the list to reach its own settings, its trophy list and Cheats / Patches. Game-specific settings override the global ones for that title only, which is the right place for anything a single game needs.

In the Cheats / Patches window, pick a repository (the shadPS4 repository is the one to use for patches), click Download Patches, then tick the ones you want. The team is clear that it gives no support for games run with cheats, patches or mods, so turn them off before reporting a bug.

Big Picture Mode

Version 0.16.0 added a controller-friendly Big Picture Mode with its own settings and game folder management. It suits a TV or a handheld better than the desktop launcher.

Bloodborne on shadPS4: what you need

Bloodborne runs on shadPS4 on Linux today, with one experimental setting switched on and a couple of known rough edges. The official compatibility list rates the Linux entry for CUSA03173 as Ingame: a tester on a Ryzen 5 4600G with a Radeon RX 6600 reported a locked 1080p at 30 FPS on v0.15.0 once relaxed readbacks were enabled.

First decide: emulator or native port?

Since autumn 2026 there is a second way to play Bloodborne on Linux, and for many people it is the better one. bbport and the projects built on it run the game’s own code directly on your CPU and translate only the graphics to Vulkan, using shadPS4’s renderer as a base. They are separate projects, not part of shadPS4.

shadPS4 bbport-based ports
What it is General PS4 emulator Runtime built for Bloodborne only
Linux builds Official AppImage and Flatpak bbport AppImage (v0.6, 19 October 2026), Bloodborne for Linux AppImage, Lantern Engine (Linux beta)
Game files Decrypted dump with update 1.09 The same dump with update 1.09
Extras Patches, mods, shadNet online FSR and DLSS upscaling, unlocked frame rate, launcher with mods, own online servers
Runs other PS4 games Yes No

If Bloodborne is the only game you care about, try a bbport build first. If you want one setup for several PS4 games, or you want to stay on the official emulator, carry on with shadPS4 below. Both use the same game dump, so nothing is wasted.

What to prepare

  • Your own copy of Bloodborne, dumped from a jailbroken PS4. Standard and Game of the Year editions both work.
  • Update 1.09. This is the final patch and the version every patch, mod and online server expects. The base game and the update must share the same title ID.
  • The Old Hunters DLC if you own it, dumped as additional content.
  • Firmware modules and fonts in place, as described earlier. Missing modules are the usual cause of silent audio and early crashes.

Common title IDs for the game are below. The two with official compatibility reports are CUSA03173 and CUSA00900.

Region Standard edition Game of the Year edition
Europe CUSA00207 CUSA03173
North America CUSA00900 CUSA03179
Japan CUSA00299 CUSA03014

Install the game

  1. Copy the base game folder, for example CUSA03173, into your games folder.
  2. Copy the 1.09 update beside it as CUSA03173-patch.
  3. Put any DLC in a CUSA03173 folder inside your additional content folder.
  4. Open the launcher and confirm Bloodborne is listed with version 01.09.
  5. Keep an untouched backup copy of the game folder before you add any mods.

Start the game once with default settings before changing anything. The first run compiles shaders, so expect stutter for the first few minutes in each new area.

Bloodborne: recommended settings, patches and mods

The one change that matters most is setting Readbacks to Relaxed. Everything else here is optional polish.

Step 1: turn on relaxed readbacks

With default settings Bloodborne shows “vertex explosions”: stretched polygons shooting out of character faces and bodies. The cause is the game’s face system reading data the GPU has calculated before the emulator has copied it back.

  1. Right-click Bloodborne and open its game-specific settings.
  2. Find Readbacks Mode in the graphics or experimental section.
  3. Set it to Relaxed and restart the game.

The mode has three values. Disabled is the default and the fastest. Relaxed, added in v0.15.0, fixes the explosions at a playable frame rate. Precise is the most accurate and the slowest. Use Relaxed, and set it per game rather than globally so other titles keep the faster default.

Relaxed readbacks are not free. Testers report frame drops when entering new areas, and a few still see occasional explosions that clear after a restart.

Step 2: apply patches

Right-click Bloodborne, open Cheats / Patches, switch to the Patches tab, select the shadPS4 repository and click Download Patches. Then tick what you want:

Patch What it does Advice
Skip Intro Skips the publisher logo screens at boot Recommended
Disable Chromatic Aberration Removes the colour fringing at screen edges Recommended, a matter of taste
Disable Motion Blur Removes blur on moving objects Recommended above 30 FPS
60 FPS (with deltatime) Raises the cap from 30 to 60 FPS with correct game speed Use if your hardware holds 60
Disable VSync Uncaps the frame rate when combined with the 60 FPS patch Only for fast systems
Resolution patches Render at 720p, 1440p, ultrawide and other sizes instead of 1080p Start at 1080p; go higher only if stable

Begin with Skip Intro and the two image patches, play for a while, then add the 60 FPS patch. Adding patches one at a time makes it obvious which one caused a problem. A lower resolution patch is the easiest way to gain speed on a weak GPU or a handheld. Higher resolutions raise VRAM use sharply, which is where 8 GB cards start to struggle.

Patches only apply when they match your game version, which is another reason to be on 1.09.

Step 3: mods (optional)

Mods replace files inside the game’s dvdroot_ps4 folder. Always work on a copy and keep your clean dump.

  • Vertex Explosion Fix is the older alternative to readbacks. It removes the explosions by disabling face customisation, so every character uses a default face. It costs no performance, which makes it worth trying on slower machines with Readbacks left on Disabled.
  • Visual overhauls and texture packs, such as the PC Remaster Project and upscaled armour textures on Nexus Mods, improve shadows, lighting and texture detail. They raise VRAM use further, so add them last.
  • Sound and SFX removal tweaks from 2024-era guides are no longer needed. They were workarounds for crashes that have since been fixed, and they strip audio and effects from the game.

Recent releases also added a dedicated mods folder so mods can sit outside the game dump. Check the instructions that ship with each mod for which method it expects.

Step 4: frame rate above 60 (optional)

To run past 60 FPS you need the 60 FPS patch, the Disable VSync patch, and a higher vBlank setting in the graphics options. Game physics and some animations were built for 30 FPS, so expect the odd glitch with cloth and ragdolls. On Linux, where the game runs slower than on Windows, a stable 60 is the realistic goal.

Step 5: play online with shadNet (optional)

The v0.20.0 release notes announced that online Bloodborne is officially available through shadNet. Messages, bloodstains, ghosts and bell summoning can all work.

  1. Use shadPS4 v0.20.0 or newer and game version 1.09.
  2. Register an account on the shadNet site.
  3. In the launcher, open the shadNet settings for your user, enable shadNet, and enter your account name (the NP ID, not your email address) and password.
  4. Start Bloodborne and choose to play online at the title screen.

The official public server accepts only official shadPS4 builds, so forks and native ports use their own servers. Everyone you want to play with must be on the same server. Treat this as a beta: the feature is weeks old, and connection problems are common.

Bloodborne: known issues on Linux and how to fix them

Two problems are specific to Linux right now: lower frame rates than Windows on the same hardware, and crackling audio since v0.15.0. Both are open bugs on the shadPS4 tracker, so the fixes below are workarounds.

Symptom Likely cause What to do
Stretched polygons, exploding faces, flickering geometry Readbacks disabled Set Readbacks Mode to Relaxed, or install the Vertex Explosion Fix mod
Audio crackles, cuts out every couple of seconds, or plays in bursts Linux audio thread timing bug since v0.15.0 (issue 4182) Apply the thread priority workaround below, or use v0.14.0 for this game
Much lower FPS than Windows on the same PC Open Linux performance bugs (4260, 5076) Lower the resolution patch, cap at 30 FPS, try a nightly build, or try a bbport build
FPS slowly drops during a long session Readbacks-related degradation while loading map assets Restart the game every hour or two
Crash or severe stutter in large areas VRAM overuse, a long-standing issue Use a lower resolution patch, remove texture mods, close other GPU apps
Dark patches in The Old Hunters areas Bug affecting Intel CPUs (issue 1594) No fix yet; check newer builds
Broken or flickering shadows Open rendering bug (issue 4384) No fix yet; visual overhaul mods can make it worse
No sound at all, or crash at the title screen Missing firmware modules Re-check the sys_modules folder
Menus show boxes instead of text Missing firmware fonts Dump font and font2
Stutter in every new area Shader compilation Normal on first visit; it settles as the cache fills

The project keeps a running list in its Bloodborne aggregate issue.

Audio crackling workaround

A user who traced the bug found that raising the priority of the emulator’s audio threads removes most of the crackling. Start the game, then run this in a terminal. It needs root because it sets real-time scheduling.

pid=$(pgrep -x shadps4)
for t in $(ps -L -p "$pid" -o tid=,comm= | awk '/AudioOu/{print $1}'); do
  sudo chrt -f -p 20 "$t"
  echo 1000 | sudo tee "/proc/$pid/task/$t/timerslack_ns" >/dev/null
done

You have to repeat it each time you launch the game. Switching between the SDL and OpenAL audio backends did not help the people who reported the bug. If the process is not named shadps4 on your build, find the right name with ps aux | grep -i shad.

Getting the best frame rate on Linux

  • Play at 1080p or lower first. Resolution is the biggest lever.
  • Keep Readbacks on Relaxed, not Precise.
  • Close overlays and recording tools. They have caused missing body parts and other glitches in this game.
  • Make sure the game runs on your dedicated GPU, not the integrated one.
  • Keep Mesa or the NVIDIA driver current. Each release fixes Vulkan problems that affect emulators.
  • Test a nightly build from the Version Manager. Rendering work lands there first.

Reporting a problem

Before opening a bug report, the team asks you to reproduce the issue on an official build with a clean dump, with all patches, cheats and mods off, and with the firmware modules installed. Attach shad_log.txt from the log folder.

General troubleshooting on Linux

Most first-run failures trace back to one of four things: the AppImage cannot start, Vulkan is not set up, the game folder is named wrongly, or firmware files are missing.

Problem Fix
Double-clicking the AppImage does nothing Run it from a terminal to see the error. Make it executable with chmod +x, and install FUSE 2 or add --appimage-extract-and-run
Launcher opens but no emulator version is listed Open Version Manager, click Refresh List and download one. On Flatpak the bundled version is the only one
Game does not appear in the list Check that the folder is named CUSAxxxxx with no -app suffix, and that its parent folder is listed under Settings → Paths
Update not detected Rename the update folder to CUSAxxxxx-patch and place it next to the base game
Flatpak cannot see your games Grant filesystem access with Flatseal or flatpak override
“No Vulkan device” or instant crash on boot Run vulkaninfo --summary. Install or update the Vulkan driver until your GPU shows with API 1.3 or higher
Game runs on the integrated GPU Pick the dedicated card under Settings → Graphics, or launch with the variables below
Black screen with sound Update the GPU driver, try the latest nightly, and check the compatibility list for that game
Crash on a specific game after updating the emulator Switch back to the previous version in the Version Manager
Odd behaviour after moving folders Make sure nothing shadPS4 uses sits in a root-owned location

Forcing the dedicated GPU on a laptop

# NVIDIA with the proprietary driver
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only ./shadPS4QtLauncher-qt.AppImage

# AMD or Intel dedicated GPU on Mesa
DRI_PRIME=1 ./shadPS4QtLauncher-qt.AppImage

Reading the log

Only the most recent run is kept, in log/shad_log.txt inside the user folder. Search it for Critical or Error near the end. The project’s wiki has a guide to common critical log messages. When you ask for help on the official Discord, attach this file.

Updating without losing anything

Emulator versions downloaded through the Version Manager normally share one user folder, so saves, firmware modules and settings carry over. Back up the savedata folder before trying a nightly build. Version 0.16.0 introduced a new configuration system with automatic migration of saves and trophies, so settings files from much older installs may not carry across cleanly.

Steam Deck and other handhelds

shadPS4 runs on SteamOS, and project testers have used a Steam Deck for Bloodborne compatibility reports. Keep expectations modest: the Deck is well below the hardware where the game holds 30 FPS comfortably.

  • Switch to Desktop Mode and install the Flatpak from Discover, or use the AppImage if you want the Version Manager.
  • SteamOS has a read-only system partition. Keep everything in your home folder or on the SD card.
  • Use a lower resolution patch for Bloodborne. A patch sized for the Deck’s screen exists in the shadPS4 patch repository.
  • Add the launcher to Steam as a non-Steam game to start it from Gaming Mode, and consider Big Picture Mode for controller navigation.
  • EmuDeck can install shadPS4, but parts of its documentation still describe the removed PKG installer. Follow the folder-based steps in this guide instead.
  • The bbport AppImage lists the Steam Deck as a supported target and is likely to run Bloodborne better there than the emulator does.

Frequently asked questions

Is shadPS4 legal? The emulator is open-source software under the GPL-2.0 licence and contains no Sony code. Emulators are generally lawful; the games, firmware modules and fonts are copyrighted, and the project’s position is that you dump them from a console and games you own. Downloading them from the internet is piracy, and laws on circumventing console protection differ by country, so check the rules where you live.

Do I need a PS4 BIOS or firmware file? Not a full firmware image. You need the handful of system modules and the font folders listed above, copied from your own console.

Can I load PKG files? No. PKG installation was removed. Games must be decrypted folders named after their title ID, or ZArchive files.

Which version should I use, stable or nightly? Stable for normal play. Try a nightly when a game has a known bug that was fixed recently, and keep the stable version installed so you can switch back.

Where is the official download? Only shadps4.net and the shadps4-emu organisation on GitHub. Sites with similar names are fan-run or unofficial, and some of their guides are years out of date. Avoid anything offering shadPS4 as an Android APK; the emulator has no official Android version.

Does it work on Wayland? Yes, on current desktops. If you see window or input problems, test under an X11 session to rule the compositor out.

Does it run PS5 games? No. shadPS4 emulates the PS4 only.

How many games work? It changes with every release. The compatibility list is the only reliable source, and it tracks Linux, Windows and macOS separately.

Is Bloodborne better on Windows or Linux? On the emulator, Windows is currently faster on the same hardware, and Linux has the open audio bug. Linux users have a strong alternative in the bbport-based native ports.

Can I use my PS4 save? Saves live in savedata/1/<title ID> in the user folder. A decrypted save exported from your console can be placed there, but the title ID must match your dump.

Where do I get help? The official Discord and the GitHub issue tracker. Neither will help with pirated games, and neither supports games run with patches or mods.

Sources

All pages were checked on 10 November 2026.

A few interface labels, such as the exact position of Readbacks Mode and the shadNet fields, could not be confirmed against the newest launcher build and may differ slightly. Patch names and the title ID table come from community listings rather than official documentation.