Place cauliflower onto baking sheets (or one large baking sheet) then drizzle with 2 tablespoons olive oil and season with salt. Place in the oven and allow to roast for 20-30 minutes or until golden brown.
To cook the rice, add the Basmati rice to a large pot set over medium heat. Add the water or stock and bring to a boil. Lower the heat and allow to simmer until the water has been absorbed then turn off the heat, cover and allow to steam for 10-20 minutes.
In a large pot, fry the onions, garlic and ginger for 2 minutes before adding spices. Allow to fry for another minute and add the roasted cauliflower into the pot.
Stir to coat the cauliflower in all the spices and add the sugar and stock.
Lower the heat and allow to simmer for 10 minutes.
Heat 1/2 cup of oil in a large frying pan and fry the onions until crisp and golden and then drain and set aside.
To make the spiced butter, melt the butter, turmeric and salt together.
To assemble the dish, layer a ½ of the rice at the bottom of a greased oven-proof dish. Drizzle with half of the spiced butter. Next, cover the rice with the cauliflower curry. Follow with the rest of the rice and the remaining butter. Finally, cover the rice with the fried onions (reserve some onions for serving). Cover with a lid or foil.
Place in the oven for 25-30 minutes.
Serve the Biryani with the plain yogurt and fresh Coriander/cilantro.