Thoroughly wash the eggplant, cut into bitesize cubes and set aside in a bowl.
Finely chop the onion and green chillies (along with the tomatoes, ginger and garlic if you opt to use fresh ingredients)
Heat up 4 tbsp of oil in a shallow frying pan on medium/high heat.
Carefully add the cubed eggplant and fry for around 2-3 minutes or until tender. The eggplant will absorb a lot of the oil so feel free to add more if you like.
Once the eggplant is cooked, remove from the pan and transfer to a bowl to cool.
In the same pan, add 2 tbsp of oil (if needed since the amount of oil left from frying the eggplant may be enough if you added more).
Add in the cumin seeds to the hot oil and wait until you see them sizzling.
Now add in the onions and sauté until they are lightly browned (5-7 minutes on medium/high)
Once the onions are lightly browned, add in the ginger and garlic and green chillies. Fry for another minute or until the raw ginger smell evaporates.
Pour in the tomato sauce (or chopped tomatoes) and stir for 2-3 minutes.
Turn the heat to low and add in the spices (chilly, turmeric, coriander, garam masala powders) and salt to taste.
Turn the heat back up to high and stir the mixture for 1-2 minutes to cook off the spices.
Now add the water and carefully incorporate with the mixture.
Lower the heat and add the cooked eggplant. Stir in and cover with a lid. You want a thicker consistency but if you do happen to add more water, just leave to simmer for longer.
After 10 minutes, remove the lid and check to see if the curry is of a thick enough consistency. There shouldn't be any residual liquid in the pan.
The curry is done! Serve with toasted buns, flatbread or white rice.