Android emulator boots, but shows black screen thereafter.

adb shell works, connecting to the emulated device and giving root access etc without an issue. I've googled everything I can think of, and tried all sorts of stuff. If you have a suggestion I haven't tried, I'd love to hear it.

Things I've tried:

  • Delete and reinstall Android studio (basicly, find $HOME | grep -i "android" | xargs rm -rf, though manually so as not to kill my projects)
  • X86, X86_64, and "armeabi-v7a" ABI's
  • Turn on/off using host GPU support/emulation
  • Changing memory amount (1.5, 2, 4GB)
  • Different API levels (21, 25, 26)
  • Rotate device's virtual screen to force a redraw
  • Remove hardware from virtual device (camera)
  • Creating fresh, brand-new flutter app to run on it.
    • (app doesn't run.
    • claims device is "offline" when I try to run it, despite having shell access and connecting with adb just fine)
  • Swearing a lot.
  • Phoning a friend.

Hardware I'm running on:

AMD FX(tm)-8350 Eight-Core Processor
NVIDIA Corporation GP104 [GeForce GTX 1070] (rev a1)
Linux herb 4.15.0-42-generic #45~16.04.1-Ubuntu SMP Mon Nov 19 13:02:27 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Xfce4 (I hate gnome & kde and it's stupid useless eyecandy & bloat)
ZFS file system (2TB capacity 653GB w/ 256G Flash drive configured as cache/zlog)

Emulator DOES show the boot screen, either B&W "Android" or fancier google logo depending on the API level. After a few minutes, it goes to a black screen, and refuses to show anything else unless I cold boot it again.

HAXM is not installed. It's not only intel-only, but also windows/mac only, and I'm running linux on an AMD processor.