Plugging the phone into USB exposes almost nothing to the Linux OS, and pictures / videos are not present.
Once I read a tutorial similar to this one, I was able to get my pictures off using libimobiledevice. BUT, none of the filenames were preserved. Even worse none of the file _extensions_ were preserved. Instead I was left with a jumbled mess of files named after a SHA checksum. I had to run `file` against them all with a script and rename accordingly. This was not going to cut it.
I tried the alternate route of using iCloud / Photos app to get everything back. First I had to pay to get enough cloud storage to hold my 10,000 photos and 1,000 videos. Then I had to wait till they synchronized with the cloud over wifi since my phone obviously didn't have Ethernet. This took a night's sleep to finish. I had to jump through even more hoops which I don't remember, but this way barely worked too
What's funny is that I had already bought the new iPhone 12. However, I was so annoyed by the locked-down Apple platforms that I returned the unopened iPhone for a full refund and got a OnePlus 9 Pro. Best decision ever. Now I have an unlocked bootloader and the ability to take phone backups, install LineageOS, root my phone, and generally control my own mobile computing environment. I doubt I'll ever have another Apple device.