1 Rinse and soak rice: Place rice in a sieve and run cool water through it to rinse it until the water runs clear. Soak the rice in cool water for 30 minutes. Drain.
2 Boil rice with cloves, cardamom, cinnamon: Bring 8 cups of water and the salt to a boil in a large pot. Add the rice and stir. Add the cloves, cardamom and cinnamon and simmer for 8 to 10 minutes.
Note that not all of the water will be absorbed!
After 8 minutes, taste the rice, and test if it is done to your taste; rice can take more or less time to cook depending on how old it is. If still too firm, cook a few minutes longer.
3 Drain rice and rinse with cold water, remove spices: When the rice is cooked to your liking, drain the rice into a colander and rinse with cold water to stop if from cooking.
Remove the cloves, cardamom and cinnamon and discard. Set the rice aside to drain.
4 Sauté mustard seeds, cumin, chili flakes, then onion: In a pan large enough to hold the rice, heat the oil over medium heat. Add the mustard and cumin seeds and the chili flakes.
Cook until the mustard seeds start popping, then add the chopped onion. Cook until the onions begin to brown, about 5-7 minutes.
5 Add garlic, then rice and turmeric: Add the garlic and cook another 2-3 minutes. Add the rice and mix well. Sprinkle the turmeric over the rice and mix well. Cook for another 3-4 minutes, stirring often.