Heat 2 tbsp oil in a pan. Add the chopped onion and cook until soft and golden.
Add garlic, ginger, and all the spices. Cook for 1 to 2 minutes until fragrant.
Stir in the brown sugar, apricot jam or chutney, vinegar, and water. Let it simmer gently for about 5 minutes, then cool completely.
Place the lamb cubes in a large bowl or container. Pour the cooled marinade over the meat, making sure it is well coated. Cover and refrigerate overnight.
The next day, thread the lamb onto skewers, alternating with chunks of onion and dried apricots.
Braai over medium coals or grill in the oven at 200°C, turning occasionally, until the lamb is cooked through and slightly charred, about 15 to 20 minutes.
Serve hot with yellow rice, chutney, or a fresh salad.