In a non-stick saucepan or a pot, heat oil over medium heat. When the oil gets hot, add the sliced onions and stir-fry constantly until they turn golden-brown in color. Don’t over fry or the onions will burn.
Add the remaining 1½ teaspoon of ginger paste and 2 teaspoons of garlic paste and do a quick stir. Add 1 cup of the reserved stock to the pan, cover the pan and let everything cook on low heat for 5-6 minutes until the liquid starts to dry out, and the onions turn very soft.
Add the beef shanks to the pan along with the chili powder and Nihari Masala. Sauté gently for 2-3 minutes, and try to avoid the meat from breaking down.
Add 3 cups of remaining stock (if the stock is less than 3 cups add water). Give everything a gentle stir and cover the pan. Let it simmer on low heat for 10 minutes.
In the meantime, in a small bowl, combine the flour with ½ cup of water. Stir well.
After the stew has simmered for 10 minutes, add the flour mixture to the pan, stirring gently. Cover the pan and let it simmer for another 10-15 minutes on low heat. Check it once or twice to make sure the gravy is not drying out.
Remove the pan from the heat and let it stand for 10 minutes with its lid on before serving. When ready to serve, add salt to taste and garnish the stew with the ginger, cilantro and lemon juice and serve hot with pita, naan or any bread of your choice.