Hello, please be a bit more specific about what you mean by “halo”. In Eevee you can enable the Properties > Render > Bloom option, is it what you’re looking for? In Cycles this option doesn’t exist so you need to do it through the Compositor with Glare node for example (also works in Eevee).
You’ll need to use volumes for those. You create a cube that encompasses your scene, give it a material, and assign a Principled Volume node to it. Like so…
it won’t work fine if you’re in front of the cone but you can create a sphere with the same material that you put at the lamp position in order to still see a light
yes it’s a quick trick to fake bloom, like this (play with the Emission strength if needed). Works fine in Cycles and Eevee and you don’t need to use Bloom or Compositor:
not that I know for the moment, except with the Compositor of course, I think it will be implemented soon. Everybody is asking for it and I think I’ve heard Pablo Vasquez talking about it if I’m not wrong (?)