As I've said above, it's not difficult in itself, but if you have never do it before could be daunting.
You need a working Ubuntu installation, you need to install the packages required to compile a kernel (something like "apt build-dep linux-image-amd64" should work on a default Ubuntu installation), you need to find and download a kernel that was patched for PS4 support (the Fail0verflow tree on Github or one of their forks), you need a "config" file (on the Ubuntu /boot directory you should find a "config-4.14.0-3-amd64" file, copying it to the kernel source tree as ".config"), run "make oldconfig" and fill out all the questions about the new driversr/features ("no" is a safe answer if you don't know what they are talking about), you should investigate which drivers/features to enable specifically for the PS4 (exercise left to the reader) and set them with "make menuconfig" (there are also WIMP tools but I've always used the "curse" terminal interface), now at this point I would simply create a package (something like "make dep-pkg LOCALVERSION=-test1"), install it in the target machine (that would automatically update the bootloader and create an initrd) and call it a day.
In your case, you would need to mount the USB disk you intend to use with the PS4, chrooting on it (i.e. mounting the USB /proc /sys and /dev and then chroot on it), installing the kerrnel package created above, verifying the initrd has the required modules (I ignore which one is required, you can examine what PSXITA put in it, what is created by the system is a file in /boot, something like "initrd.img-kernel-version-arch-version"), copy the initrd and vmlinux file (the kernel itself) in the other USB device and trying to load it with the load-linux payload.
As I've said above, find a recent guide on how to compile a kernel on Ubuntu (like
https://kernel-team.pages.debian.net/kernel-handbook/ ) and search information on how the boot is done on a PS4, I think what I described above should be reasonable (pivoting the FS after launching the kernel) but I didn't verified it.
Edit: I forgot that using directly a kernel config file from a Debian/Ubuntu distributions would result in some errors messages, there are a couple of lines to remove (config about signing keys) and I don't recall which are right now. Probably there's something else that I've forgot...
2nd Edit: found it:
https://salsa.debian.org/kernel-team/kernel-handbook/commit/006e6584aec6586b5b730ac90351455295cdcbf0 you are lucky cause I didn't compiled a kernel in probably a decade, until I decided to play with an AMD (Raven Ridge) APU... T__T