/PS4Linux-Documentation

Documentation for Linux on the PlayStation 4

PS4 Linux Documentation

A complete documentation for Linux on the PlayStation 4


What you need.

Files.

Kernel.

PS4 Kernel
Aeolia 4.14.93 (Most Stable - HDD Support - By Psxita) 5.3.18 (BETA - Vulkan support - HDD Support - By Mircoho) 5.15.15 (BETA - Vulkan support - HDD Support - by codedwrench)
Belize 4.14.93 (Most Stable - HDD Support - By tihmstar) 5.3.18 (BETA - Vulkan support - HDD Support - By Mircoho) 5.15.15 (BETA - Vulkan support - HDD Support - by codedwrench)
Baikal 4.14.93 (Most Stable - No HDD Support - By Psxita) 5.3.18 (BETA - Vulkan support - No HDD Support - By Mircoho)

Aeolia, Belize and Baikal are based on the you'r PS4 model take a look here (thanks to @Plattntektonik)

Initramfs.cpio.gz.

Author Link
Psxita MEGA
Hippie68 GitHub
Nazky MEGA

Linux Distrubution.

Prefab.

Author OS
Psxita Psxitarch
Mircoho Gentoo
ItMania Fedora 32 Tron Edition
Modded Warfare Fedora 32
Nazky CuteFish OS

How to update Psxitarch ?

You can find a complete tuto here.

How to update Fedora ?

You can find a complete tuto here.

How to update CuteFish OS ?

Using the terminal

sudo pacman -Syyu

It's update :D (you maybe have to restart the PS4).

Using Pamac
  • Open the store (Add/remove software) app.
  • Go to "Update".
  • Click on "Apply".
  • Wait...
  • It's update :D (you maybe have to restart the PS4).

How to make my own OS ?

What you need :

  • A compatible OS.
  • A vm (virtual box, VMware, qemu, ...) or a PC/Laptop.
  • The PS4 drivers here.
  • A brain :p.

1) The OS.

You need a compatible OS, theoriclly all linux distrubution can be run on the PS4 if you have the drivers, since we only have the drivers for arch you need a arch based distro, i recommend Manjaro but you can try any others.

2) Installing PS4 drivers Using precompiled drivers.

After installing the OS on a vm (or a real PC/Laptop) you need to add the PS4Xploit repo.

sudo echo -e "\n[ps4xploit-repo-arch]\nSigLevel = Optional TrustAll\nServer = https://PS4Xploit.zd.lu/Linux/Repo/x86_64" >> /etc/pacman.conf

Then update the repos.

sudo pacman -Syyu

And install the drivers.

sudo pacman -Syy mesa-ps4 lib32-libdrm-ps4 lib32-mesa-ps4 libdrm-ps4 xf86-video-amdgpu-ps4

(if you want to compile the driver locally take a look here, it's also recommended to use "Auto-Login")

3) Backup the OS.

After installing the drivers and customized the OS like you want you can now backup the OS to be able to install it on the PS4.

First it's recommended to go to the root folder.

cd /

Now you can backup the OS (you maybe have to change the command depending of the OS you use).

(Replace 'DistroName' by the name of you'r distro).

sudo tar -cvf DistroName.tar.xz --exclude=/DistroName.tar.xz --exclude=/var/cache --one-file-system / -I "xz -9"

MAX SIZE <=3.2GB.

4) Installing the OS.

⚠️ USE A >=16GB USB 3.0 DEVICE !!!!!!!!!!!!!!!!!!!!!! ⚠️

  • Format the USB 3.0 Device to fat32 (you can use this software).

  • Put the bzimage, the initramfs.cpio.gz and the OS in the root of the USB 3.0 Device.

  • Rename the OS to 'psxitarch.tar.xz' (if you use the initramfs.cpio.gz from Nazky rename the os to arch.tar.xz).

  • Launch the 1GB Linux payload using one of the trusted host in the list below.

  • When rescushell start run exec install-psxitarch.sh (if you use the initramfs.cpio.gz from Nazky run exec install-arch.sh) and wait.

  • When the installation is done the OS is going to boot automaticlly, if the OS not boot run exec start-psxitarch.sh (if you use the initramfs.cpio.gz from Nazky run exec start-arch.sh) and wait (you need to runexec start-arch.sh twice everytime you reboot the OS).

Optional - Installing the OS on the HDD.

⚠️ USE A COMPATIBLE PS4 !!!!!!!!!!!!!!!!!!!!!! ⚠️

  • Use a FTP Client and transfer the bzimage, the initramfs.cpio.gz from Nazky and the OS (this should be called arch.tar.xz) to /usr/system/boot.
  • Run any GB Linux payload using one of the trusted hosts in the list below.
  • When the rescueshell starts run exec install-HDD.sh and set how much space in GBs you want to give to linux.
  • Wait until it's finished..
  • When the installation is done the OS is going to boot automatically, if the OS does not boot; press CTRL + D or run exec start-arch.sh.

Optional - Uninstalling.

To unistalling a OS install on a USB Device just format the USB Device.

Optional - Unistalling the OS on the HDD.

To unistalling a OS install on the HDD just delete the Arch.img file in /usr/home.

Trust host to use.

This list can change in the futur.

Little F.A.Q

I have a black screen

It's a 'bug' in the 5.x kernel you need to refresh the HDMI the most easy way it's to wait until you get no signal then moved the mouse or pressed a key on the keyboard.

I still have a black screen even with the kernel 4.14

Make sure you'r display is compatible with the 1080p resolution, if you still have a black screen try a others monitor.

I don't have WIFI or BT

This can be caused by the kernel or the distro, not real fix here use a wifi or/and a bt dongle.

Some apps not launch why ?

FlatPak apps seems to have some problems with the ps4, and Snaps apps is not working, not real fix here use AUR.

I can't use my controller as a mouse why ?

Some distro don't have ds4drv preinstall (Cutefish for the exemple here) use the store (pamac) to install ds4drv (it's recommend to install the motion control one) then open a terminal, connect you'r ds4 in usb and run ds4drv --hidraw .

While installing to HDD I'm getting tar: invalid magic

The arch.tar.xz you ftp-ed to the hard drive is not a real tar.xz file, its most likely a tar.gz. This seems to be the case for the psxitarch.tar.xz OSes floating around. To use these types of tar files, you can type the following after the error shows:

tar -xvf /ps4hdd/system/boot/arch.tar.xz

This will take a while! After that is done run:

exec switch_root /newroot /newroot/sbin/init

If nothing happens after that, you could try to press CTRL-D twice.