Prepare the fish: Rinse the fish pieces under cold water and season them with salt and pepper. If you prefer a stronger flavor, you can marinate the fish with a little lemon juice, garlic, and ginger for about 30 minutes before cooking.
- Make the sauce: In a large pot or Dutch oven, heat the vegetable oil over medium heat. Add the chopped onions and garlic, sautéing for 4-5 minutes until softened and fragrant. Add the chopped tomatoes, tomato paste, smoked paprika, cumin, turmeric, and coriander. Stir well and cook for another 5-7 minutes, allowing the tomatoes to break down and the spices to release their flavors.
- Cook the fish: Add the fish pieces to the pot, making sure they’re coated with the tomato and spice mixture. Add the fish stock or water, enough to cover the fish, and add the bay leaves. Bring to a simmer, then reduce the heat to low and cook for about 15-20 minutes, allowing the flavors to meld together and the fish to cook through.
- Add the vegetables: Carefully remove the fish from the pot and set it aside. In the same pot, add the carrots, potatoes, eggplant, bell pepper, and cabbage. Add more water or stock if necessary to ensure the vegetables are mostly covered. Bring to a simmer and cook for about 15-20 minutes, or until the vegetables are just tender.
- Add the rice: Once the vegetables are cooked, add the rice to the pot, stirring gently to combine. Add a pinch of salt and pepper to taste. Pour in enough water or stock to cover the rice by about an inch (roughly 4-5 cups, depending on the type of rice). Bring to a boil, then lower the heat to a simmer and cover the pot. Let the rice cook for about 20-25 minutes, or until it’s fully cooked and has absorbed all the liquid.
- Final assembly: Once the rice is cooked, gently place the fish back into the pot on top of the rice. Cover and let it sit for an additional 5-10 minutes, allowing the fish to reheat and the flavors to meld.
- Serve: Carefully scoop out portions of the rice, vegetables, and fish onto serving plates. Garnish with fresh cilantro or parsley if desired. Serve hot, often with a side of spicy chili sauce or a squeeze of lime for added flavor.