Make your own PS4 Linux Distro: Beginner’s detailed guide (step by step)

Start building Fedora, Ubuntu and Arch Linux distros for PS4 with our extremely detailed guide

After having access to multiple Linux distros like Ubuntu, Pop OS, Fedora, etc. on your PS4, at some time, you would wonder how you could make your own PS4 Linux distro. If you are well-versed in Linux and building Linux, you could refer to our quick guide. But, if you are a total beginner, worry not. This article explains the steps for building your own PS4 Linux distro in great detail.

Moreover, to help the beginners, each step of the process will also have a video tutorial explaining the steps deeply.

In this tutorial, we will be building a Fedora distro for PS4. To be precise, we will build Fedora 35 LXDE. LXDE, because it is lightweight. Most steps are same for the other distros. But, if there are any variations, these will be mentioned specifically.

Requirements

Below are a few requirements you have to fulfill before setting out to build your first PS4 Linux.

ISO of distro

Download links for the latest build of many Linux distros is available in the Downloads section. Download the distro in the ISO format. While downloading, make sure that you download the 64 bit ISO. This is mentioned variably as x86_64, x64 or amd64. You should be fine here, as most Linux distros by default only provide 64 bit builds.

So, if you are planning to build Fedora 35, you would download the ISO named Fedora-LXDE-Live-x86_64-35-1.2.iso. I hope you get the idea.

Virtual Machine software

There are many options to choose for virtual machine software like VirtualBox, VMWare and Qemu. You can find the links to download these in the Downloads section. I recommend VirtualBox for building PS4 Linux distros. This is because it is easy to setup and is extremely suitable for our use case. In this tutorial, we will use VirtualBox.

USB Drive

This will come in handy for installation of the distro on the PS4 later. We will not cover the installation instructions here, as they have been covered in detail in the AIO page.

Now that you know the requirements well, it is time to get started with the process of building PS4 Linux from scratch.

Step 1. Setup Virtual Machine

Install and setup VirtualBox

  1. Install VirtualBox.
  2. Download VirtualBox Extension Pack. To do that, go to the Download page, scroll down and under VirtualBox [version] Oracle VM VirtualBox Extension Pack, click on All supported platforms. This will download the latest Extension pack.
  3. Install Extension pack by opening it and agreeing to the terms.

Setup Virtual Machine for Distro installation

  1. Start VirtualBox.
  2. Click on New and provide any name for the Virtual Machine (VM), for example PS4Linux.
  3. Select Type and Version according to the distro you are building (Optional). For example, if you are building Fedora choose Linux under Type and Fedora (64-bit) under Version. Click Next.
  4. Choose RAM. I would suggest you to assign atleast 2GB (2048 MB) of RAM. But, if you are building a heavier distro, you might have to assign more RAM. Once set, click Next.
  5. Ensure Create a virtual hard disk now is selected and click Create.
  6. In this step, choose VDI or VHD and click Next.
  7. Choose Fixed size and click Next.
  8. Here, set the storage capacity you would like to assign. While we need only 2-3GB of storage for the build, some distros won’t install until or unless a set storage capacity is available. So, to be safe, assign 10-15GB and click Create.
  9. Once the VM has been created, you will find it on the left pane. So, here, we have PS4Linux listed. Click on it and on top right, click on Settings.
  10. Click on Storage and then click on the disk icon which says Empty. Browse to the distro ISO and select it.

Now, the virtual machine is ready for installation.

Step 2. Install Linux Distro to Virtual Machine

  1. Click on the VM (in this case, PS4Linux) and click Start on top right.
  2. Your VM will boot into the Installation Wizard (in the case of most distros). If in case, it doesn’t, just click on the Install now application which should be on the Desktop.
  3. Choose the language and keyboard settings and click on Continue. These steps might be slightly different on other distros. I am sure you can work these basic steps out.
  4. Next, on Fedora, click Installation Destination.
  5. Under Storage Configuration, check Custom.
  6. On top left, click Done.
  7. In the page that opens, click on the drop down menu and choose Standard Partition.
  8. Click on + below it.
  9. For Mount Point, select / and click on Add mount point.
  10. Click on Done on top left.
  11. Click Accept Changes.
  12. Click on Root Password. Set up a root password here itself as it will save a lot of headache later. Click on Done.
  13. Click on User Creation.
  14. Provide the details as per your need. Make sure that the option, “Make this user administrator” is checked. Click Done.
  15. Click on Begin Installation.
  16. This process will take some time and once complete, click on Reboot System.

Troubleshoot

1. Error checking storage configuration

On some Fedora-based distros, you might encounter this error – “Your BIOS-based system needs a special partition to boot from a GPT disk label. To continue, please create a 1MiB ‘biosboot’ type partition.” To fix this, follow these steps. Redo sub-steps 1-4 from Step 2 above and then continue from there.

  1. Under Storage Configuration, check Advanced Custom (Blivet-GUI).
  2. On top left, click Done.
  3. In the page that opens, check if you see free space. If you don’t, click on sda1 or any other partitions that you see, and delete them by clicking the encircled cross above.
  4. Click on free space and then click on the wrench icon above and click on Set partition table.
  5. Make sure msdos is selected and click OK.
  6. Click on + above.
  7. For Mountpoint, type / and click OK.
  8. Click on Done on top left.
  9. Continue from sub-step 12 in Step 2 above.

Video Guide: Step 1 & Step 2

Following is the video guide that explains the first two steps of the tutorial as mentioned above. In the video, I setup the virtual machine on VirtualBox and install the Linux distro to it.

Step 3. Finalise packages and applications for the PS4 Linux Distro

In this step, we will remove the unnecessary packages and install the packages that we require. We will also update the system. Follow the steps given below in the order given for best results.

Remove unnecessary packages

  • Open terminal
    • On Fedora and Fedora-based distros, type sudo dnf remove <package name>. For example, if you want to remove Galculator, type sudo dnf remove galculator and press Enter.
    • On Ubuntu and Ubuntu-based distros, type sudo apt-get remove --purge <package name>.  For example, if you want to remove Galculator, type sudo apt-get remove --purge galculator and press Enter.

Install packages

For this, we have a very detailed database that lists the commands to install most common applications on the major Linux distros. Check it out here and install these applications using the commands one by one.

Update the PS4 distro

  • Open terminal
    • On Fedora type sudo dnf update and press Enter.
    • On Ubuntu and Ubuntu-based distros, type sudo apt-get update and press Enter.  After that, type sudo apt-get upgrade and press Enter.

Clear unnecessary packages

After these processes, there might persist some files and packages that are no longer required. To remove them, follow the steps below.

  • Open terminal
    • On Fedora type sudo dnf clean all and press Enter.
    • On Ubuntu and Ubuntu-based distros, type sudo apt-get autoremove and press Enter.

Video Guide: Step 3

In the video below, I show you can install and uninstall packages on your Linux distro, after which we update the system and delete any stray files or applications.

Step 4. Install PS4 Linux drivers for the PS4 Linux distro

Drivers (Mesa, libdrm and xorg or xf86) for major distros have already been compiled by developers. You can always make use of them for your build. You can check the Driver download section for these drivers.

Assuming you have downloaded these, here are the instructions to install them on the PS4.

Install Linux drivers on Fedora for PS4

On Fedora and Fedora-based distros, drivers have a .rpm extension. Assuming you have all the 32-bit drivers organised into the folder 32 and the 64-bit drivers into the folder 64, follow these steps to install them. But, before we install the drivers on Fedora, we will uninstall the existing drivers. Doing that, you can avoid many driver conflicts that usually arise.

  1. Open a terminal.
  2. Type sudo rpm -e --nodeps $(rpm -qa "mesa*") and press Enter.
  3. Type sudo rpm -e --nodeps $(rpm -qa "libdrm*") and press Enter.
  4. Type sudo rpm -e --nodeps $(rpm -qa "xorg-x11-drv-amdgpu*") and press Enter.
  5. Go into the folder containing the drivers and open Terminal in that folder. Change directory to 64 by typing cd 64 and press Enter.
  6. Type sudo yum install *.rpm and press Enter.
  7. Do the same for the 32-bit drivers, i.e., change directory by typing cd 32 and press Enter.
  8. Type sudo yum install *.rpm and press Enter.
  9. That’s it!

Install Linux drivers on Ubuntu for PS4

On Ubuntu and Ubuntu-based distros, drivers have a .deb extension. Assuming you have all the 32-bit drivers organised into the folder 32 and the 64-bit drivers into the folder 64, follow these steps to install them.

  1. Go into the folder containing the drivers and open Terminal in that folder. This can be done on most distros by right clicking in an empty space in the folder and clicking on Open folder in terminal. Else, copy the path to the folder, for example, /home/ps4linux/Downloads/drivers and type cd /home/ps4linux/Downloads/drivers in a terminal.
  2. Change directory to 64 by typing cd 64 and press Enter.
  3. Type sudo dpkg -i * and press Enter.
  4. This will likely throw an error. To fix it, type sudo apt-get --fix-broken install and press Enter.
  5. Do the same for the 32-bit drivers, i.e., change directory by typing cd 32 and press Enter.
  6. Type sudo dpkg -i * and press Enter.
  7. If it throws and error, type sudo apt-get --fix-broken install and press Enter.
  8. That’s it!

That prepares the Linux distro to run suitably on the PS4. Let us move to the last step.

Video Guide: Step 4

In the following video, I show how you can install the pre-compiled Linux drivers before which we uninstall the older drivers.

Step 5. Backup Linux for PS4 installation

There are a few different ways to do this. If the one doesn’t work or throws an error, check the next method.

Backup Linux on current running Distro

In this case, we will back the distro while it is running. Follow the steps below.

  1. Open Terminal.
  2. Type cd / and press Enter.
  3. Assuming you want to name the backup file ps4linux.tar.xz, type sudo tar -cvJpf ps4linux.tar.xz --exclude=/ps4linux.tar.xz --exclude=/var/cache / and press Enter.
  4. If that doesn’t work, try this – sudo tar -cvf ps4linux.tar.xz --exclude=/ps4linux.tar.xz --exclude=/var/cache --one-file-system / -I "xz -9".
  5. After the process is complete, you will find the file ps4linux.tar.xz in the root folder of your distro.
  6. Copy it and install using the instructions given here.

Backup Linux distro using Live CD

In this case, we will backup the Linux distro for PS4 using a LiveCD while the distro to backup is not running. I prefer doing it this way, but, though I have not seen any added benefits of doing this. It’s totally upto you. Follow these steps.

  1. Shut down the Virtual Machine.
  2. Go to the VM’s (in this case, we named it PS4Linux) settings.
  3. Go to Storage and on the Disk icon, with empty on it, load the ISO of the distro again as we did in Step 1. But, this time, to the right of it, ensure that Live CD/DVD is checked.
  4. Start the VM.
  5. Once the Live Distro is loaded, open File Manager.
  6. On left pane in most distros, you will find the option – Computer. Click on it and open the drive – VBOX HARDDISK (the capacity of the disk will also be mentioned).
  7. Open a terminal within this drive/folder and type sudo tar -cvJpf ps4linux.tar.xz --exclude=ps4linux.tar.xz --exclude=var/cache *.
  8. After the process is complete, you will find the file ps4linux.tar.xz in the drive you have just opened.
  9. Copy it and install using the instructions given here.

That completes the process.

Video Guide: Step 5

In the final part of the tutorial, I show you two different methods to backup the distro for installation on the PS4.

Step 6. Install and load PS4 Linux distro

You can use either the usual Rescueshell method (if distro package is under 4GB) or the alternate installation method to install and load the distro on your PS4.

Conclusion

Were you able to make your first distro following these instructions? Great! Or, are you facing any troubles in the process? Don’t worry, just leave a comment below and I’ll get back to you at the latest. Also, if you want to add your distro or kernel to our Download database, contact me, or leave a comment below. You will be properly credited for the contribution.

36 Comments

  1. Thank you very much, for this complete tutorial. very good work. I have a question at the end when we finished saving the PS4linux system, you show us how to test the PS4Linux distribution with a USB key, is it possible to test it in VM with virtualBox without USB key? In any case bravo.

  2. sorry, I’m rephrasing. When we have finished saving are system. Before installing it on PS4, can we test its backup with virtualbox?

  3. Hello Noob404. Great work, thank you for this tutorial and your videos. I managed to make a fedora 35, following your explanations. At home I have been using PCLinuxOS for 10 years, I tried to install your .rpm video drivers on PCLinuxOS, but it does not work, problem of dependencies. I searched the sources to try to compile them on PClinuxOS, but I couldn’t find anything. Can you help me? I created a special amiga iso on PCLinuxOS and I wanted to test it on PS4. I’ll give you the link if you want to test the ISO, there are no roms or kickstart. https://mega.nz/file/e19VgYBC#f2wQv35qiE1Cm-LwXLlqo5KStosYBBiMt-1rnxjKL_w

  4. Hi, I have a query, I am successfully able to install any of the provided linux distro for my ps. However, its a headache to do the setup on a ps4, bcoz its too damn slow. Is it possible to boot the installed system on the external hard disk on a pc and setup things there and than connect the hard disk back to ps4 and simply just plug and play there?

  5. I’ve got MXLinux 21.2.1 (wildflower) running on PS4. Was a pain to get going luckily used linux for years and was able to troubleshoot boot issues/permission issues when going from Virtual machine(on pc), to a physical machine(ps4) running different hardware [https://www.reddit.com/r/ps4homebrew/comments/ypz4w6/mxlinux_2121wildflower_on_playstation_4]

  6. I am tried to Copilate Fedora 37 for my PS4 but in Virtual Box when trying to choose the mounting point of the virtual hard dico it gives me error. He says I must create another 1MB partition next to the assembly point

    • I remember running into the same issue on the same distro, if I recall correctly just create a 10mb partition (it would not let me create a 1mb partition) and should install fine. if you still run into issues i think i got a clean .vdi of fedora 37 you could try

  7. I tried to build my own OS based on Arch Linux, I followed a mix of your guides and the guide present on Hakkuraifu’s PS4Linux-Documentation GitHub page. I installed the PS4 specific drivers, I tried both the 5.3.18 and 5.15.15 kernels along with both Psxita and Nazky initramfs with my Belize PS4 installing to the internal drive on my PS4. The OS installs fine, but when it gets to the point where you actually boot into the OS, it always ends up hard crashing my PS4. Kind of at a loss as for what to do. I have tried psxitarchv3 along with Arch Linux by Darkstorm, psxitarchv3 functions, but I am more comfortable with an Arch install that I put together and the Arch Linux by Darkstorm, did the exact same thing as when I tried to build my own that being just hard crash when it gets to booting after installing fine.

    • I had the same exact issues and just ended up using psxitarchv3 in the end. I just started removing stuff I knew I was not going to use. If we get an answer at some point, that would be awesome.
      I also attempted to compile the drivers myself and only 1 compiled successfully. I don’t know or understand how they were pulled off, so I’m stuck with the distros, as I’m sure it’s either the drivers or probably something in regard to permissions.

  8. hello, I can’t create a mount point / and an ext4 partition in fedora39, when I do a standard installation, everything is ok, but I don’t know if it will work, someone solved this problem

  9. Ok, but it is kind of unclear, after i make this custom .tar.gz/xz , how can i install it? And through which method? (rescue shell or internal hdd or rufus?)

  10. Where would I find the Linux drivers folder on Fedora for PS4.I’m running df_aus fedora 39 and want to update the drivers you mentioned in another tutorial

Leave a Reply

Your email address will not be published.


*