Peel the potatoes and chop into bite-size chunks. Place the potatoes in a large pot, top with water and season with salt. Bring the water up to a boil and parboil for 10 minutes. Drain and set aside.
Saute the onions, garlic and ginger in a large pot until soft and fragrant. Add the spices and cook for another minute.
Add the tomatoes and sugar then cook for 2 minutes. Add the potatoes and stir to coat in the sauce.
Pour in the stock then season to taste. Reduce the heat and simmer for 25-30 minutes or until the potatoes are cooked through and the sauce has thickened.
Serve the curry with roti, yogurt and chopped chillies.