1. Put 2 tbsp of the spice mix into a large bowl, add the ribs and toss to coat. Cover and refrigerate for 30 minutes.
2. Preheat the oven to 150°C, gas mark 2. For the sauce, heat the butter in a large, heavy-based pan, add the onions and fry for 8-10 minutes until soft and caramelised. Add the garlic and cook for a further minute. Add the remaining spice mix, fry for a minute then add the rest of the ingredients. Bring to the boil then simmer for 10 minutes. Blend the sauce with a stick blender until smooth.
3. Tip the ribs into a large, shallow, ovenproof dish, pour the sauce over and toss to coat. Cover tightly with foil and cook in the oven for 2 hours. Remove the ribs from the dish and pour the sauce into a saucepan. Bring to the boil then simmer for 10 minutes until thickened.
4. Preheat a grill or barbecue to a medium heat and cook the ribs for 3-4 minutes on each side, basting occasionally with the sauce and turning frequently until caramelised. Serve with coleslaw, corn on the cob and the remaining sauce.