Take a 9” square baking pan. Place the tomatoes and onions in a single layer. Top with oil and salt. Preheat the oven at 200°C. Bake the tray with tomatoes for 45 minutes or so, until you see a few charred spots and the tomatoes have softened.
Once cool enough to handle, peel off the skins and place the roasted tomatoes and onions in a blender. Make sure you use the oils and tomato juices if any from the baking pan, because this is where a lot of flavour is. Blend to a fine puree and keep aside.
In a small mixer jar, blend the garlic and ginger to a fine paste.
In a large pan, heat the ghee. Fry the bay leaves and cumin seeds. Once the seeds splutter, add the prepared onion-ginger-garlic paste and fry for 6-7 minutes.
To this add the tomato-onion puree, spice powders, kasuri methi, sugar and salt. Mix well, cover with a lid and allow to simmer for 7-8 minutes. The cover or lid ensures that there is no spluttering of this gravy.
To this gravy, add any of the given ingredients such as paneer, boiled peas, boiled cubed potatoes, hard boiled eggs etc.
Heat the piece of charcoal on an open flame until red hot. Place this in a steel cup or bowl. Top with ghee. Place this cup in the centre of the pan with gravy, ensuring that it is not toppling into the gravy. Immediately cover with a tight fitting lid so that the smoke stays inside the pan for a good 20-30 minutes.