I have an RPi4 running from an SSD for almost a year now. At that time it wasn't possible to boot directly from an SSD, but it is possible to change the boot option so that the SSD will be used for /root. Perhaps that's an option for you.
If I remember correctly, I used this page as a guide, but since then the information seem to have changed. It looks like it's now possible to boot directly from an SSD, but according to the comments it's not full proof yet.
I did the following to run my RPi4 from an SSD. It still boots from the SD card but after that only uses the SSD.
- Write an official Raspbian image to a fresh SD card.
- Copy an empty file ssh and (for wireless access) your wpa_supplicant.conf to the card.
- Boot the RPi from the SD card. It should now have an IP in your network (I use Slitheris to quickly identify IP's on my network) and you should be able to SSH into it with PuTTY or so.
Prepare the SSD
Plug the SSD into a USB3 port of the RPi. The drive will probably be mounted as /dev/sda1. I'm no Linux expert at all, so not sure of that. Check with
sudo fdisk -l and change below if necessary!
Unmount, format and re-mount the SSD:
sudo umount /dev/sda1
sudo mkfs.ext4 /dev/sda1
sudo mkdir /media/rootdrive
sudo mount /dev/sda1 /media/rootdrive
Copy the contents of the SD card to the SSD:
sudo rsync -avx / /media/rootdrive
Change boot option
After the next reboot the RPi won't run without the SSD until you remove "root=/dev/sda1" from cmdline.txt on the SD card.
So reboot and enjoy the speed at which the RPi now runs :)