Hey guys! So OsirisX has finally shown a tutorial on how to install Steam on a PS4 using Linux. If you don't know what i'm talking about. You can check this old thread on Osiris running Linux which could be found You must login or register to view this content..
This tutorial is by PS4 Developer OsirisX so all the credit goes to him. Lets get started with it!
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
This guide is WIP and more pics will follow.
You may have seen my video above running Steam on the PS4, and this tutorial will explain the procedure. Originally I intended to use Ubuntu for this guide since there’s already a tutorial for that but I was having problems enabling graphics acceleration. Instead I chose Fedora which seems to work fine.
You must login or register to view this content.
Required Hardware:
Required Downloads:
(On your PC) Boot up Fedora using VirtualBox (with your usb disk attached) and wait until it reaches the welcome screen.
You must login or register to view this content.
Before we actually install Fedora, we need to partition the usb disk. Open up a terminal and type the following the commands.
su
fdisk -l
Find your usb disk location (Ex: /dev/sda) and use parted to partition it.
parted /dev/sda
mklabel msdos
mkpart primary fat32 1MiB 513MiB
mkpart primary ext4 513MiB 100%
quit
mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
Keeping the terminal open, go back to the welcome screen and click “Install to Hard Drive”. Click on “Installation Destination” once the summary page comes up.
You must login or register to view this content.
Select your disk and click on “I will configure partitioning” under storage options. Then click “one”.
You must login or register to view this content.
Once the next screen comes up, select /dev/sda2 partition on the left. Use the mount point root “/” and select “Reformat” next to File System. Then click on “Update Settings”
You must login or register to view this content.
Click on “one” and then “Accept Changes” when the change summary page comes up.
Finally, click on “Begin Installation” when we’re back at the summary page. At this point, you should configure your root password and user.
You must login or register to view this content.
Before shutting down Fedora, we need to install the ps4 Radeon drivers.
Go back to the open terminal and mount the partition that you just installed Fedora to.
mount /dev/sda2 /mnt
Enable ssh server.
systemctl restart sshd
Find the ip address of your VM.
ifconfig
Use WinSCP or Filezilla from your host to transfer over ps4-radeon-rpm.zip to /mnt/tmp. (Note: If you get connection errors, you may need to set your network adapter to bridged in VirtualBox network settings)
Go back to the VM’s terminal and chroot into installed Fedora.
cd /mnt
mount -t proc proc proc/
mount -t sysfs sys sys/
mount -o bind /dev dev/
chroot /mnt
Now we can install the patched Radeon drivers.
cd /tmp
unzip ps4-radeon-rpms.zip
cd ps4-radeon-rpms
dnf install --nogpgcheck *.rpm
If you get an error with drm-utils, do
rm -rf drm-utils-2.4.65-1.fc23.i686.rpm
dnf install --nogpgcheck *.rpm
Gnome desktop can be too heavy for the ps4 to handle. I recommend installing something lighter such as “awesome”. Others may work as well but haven’t tested.
dnf install awesome
Edit /home//.xinitrc and add
exec awesome
Disable gdm at startup:
ln -sf /usr/lib/systemd/system/multi-user.target /etc/systemd/system/default.target
We should also disable vsync to reduce graphical errors.
Edit /home//.drirc and add
Enable ssh server at startup if you like.
systemctl enable sshd
Finally install Steam.
dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
dnf install --nogpgcheck steam
Exit out of chroot, unmount your drive and power down VirtualBox.
exit
cd /
umount -R /mnt
poweroff
Copy over bZimage & initramfs.cpio.gz to the fat32 partition of your drive if you haven’t done so already.
Startup your PS4 with your usb drive in and boot up Linux with You must login or register to view this content.. Once you get to the init screen, type:
fdisk -l
Find your Fedora partition and mount it.
mount /dev/sda2 /newroot
Start up Fedora
exec switch_root /newroot /newroot/sbin/init
You should then get a login screen. Login and type
startx
This will boot up your DM.
Open up a terminal and type:
glxinfo | grep vendor
You should have a line saying “AMD LIVERPOOL”. This means graphics acceleration is working.
Finally open up a terminal and start Steam. Because Steam comes shipped with it’s own shared objects, we need to add LD_PRELOAD path before calling steam otherwise it will load older libs.
LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1' steam &
Tips:
To launch apps from remote computer through ssh, we can just add DISPLAY=:0
DISPLAY=:0 LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1' steam -bigpicture &
To restart UI based login, you can do:
systemctl restart gdm
And make it permanent by
systemctl enable gdm
Recommended Software:
Kodi
dnf install kodi
kodi-standalone
What’s not working?
Sound over hdmi, wifi, bluetooth, ethernet(only gigabyte works)
Workarounds?
Usb sound card, usb wifi, usb bluetooth, etc.
Notes:
Whenever updating packages with dnf, remember to exclude Radeon lib updates as they are unpatched for the PS4.
dnf upgrade --exclude=libdrm*,mesa*,xorg-x11-drv-ati
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If anyone receives any type of bugs for this. Please report this to the original creator, OsirisX, on his original thread which can be found You must login or register to view this content.. Last but not least, once again, this goes to fully credit to OsirisX which made this tutorial for everyone in the community. Hope you guys enjoy this, and use this in a good matter guys, peace!
Cheers, Hydrogen