nothing stops you from writing code on OSX. Plenty of people do it for their business. IOKit is strange coming from a Linux world, sure, but it works as well as you would expect. It's a pain but it's possible to write kexts and other low level osx stuff.
"All of my music is in iTunes, having been re-imported from the original CDs over a period of time. I can just re-rip all of it on my Linux box, but that's going to suck. Or, I can try to grovel around in their grungy database and try to make sense of it and "export" things, but I'm sure that will be even worse."
I don't understand the itunes complaint here. If you are leaving the mac ecosystem, the most you lose is the playlists -- the metadata is still stored in the individual files and VLC is perfectly competent in playing those files. It's not like itunes magically combined all the files in one big mess.
"Then there's my phone. How do you use one of these things without a computer upon which to sync your data and backups?"
Windows VM?