There are cell phone videos where third parties are shouting “F**k foreigners” at the gunman, and the gunman replies “I’m German”.
This is going to end up being a German born Turk, Albanian or Bosnian Muslim.
This is the first explanation I’ve seen that reconciles the conflicting reports satisfactorily. Islamic shooter being shouted at by Germans, and he defends his Germanness, whatever that might amount to.