1. To make the harissa, put the chillies in a food processor with a pinch of salt, ½ of the caraway, ½ of the cumin and all the garlic; blend until smooth. Add the pepper and blend again until smooth. Transfer to a mixing bowl with the remaining harissa ingredients, adding the rose water 1 tsp at a time, to taste. Any surplus harissa will keep well in the fridge for up to a week, covered with a little olive oil to seal it.
2. Put the butter in a saucepan and heat until hot. Add the sage leaves and fry for a few seconds until crisp, ensuring they don’t burn. Remove the pan from the heat and transfer the sage leaves to a piece of kitchen paper; set aside. Scrape the brown bits from the bottom of the pan and discard, reserving the butter. Mix the garlic with the thinned yogurt; season and set aside.
3. Bring a large pan of water to the boil. Meanwhile, heat the oil in a saucepan over a medium heat. Add the oregano and fry for a few seconds, then add the spinach. Season and stir, cover with a lid, and cook for about 1 minute. If the spinach is watery, drain through a colander.
4. When the water is boiling, turn the heat to low and add the vinegar and a pinch of salt. With a wooden spoon, stir the water rapidly in one direction. Break the eggs, one by one, into the water. While they cook, put a large dollop of garlicky yogurt in the centre of each plate and spread out, making a small well in the middle; put the spinach here. When the eggs are cooked to your liking (about 3 minutes for a runny yolk), use a slotted spoon to lift them onto kitchen paper, then sit on top of the spinach and season. Put a large dollop of harissa on the side and spoon over the warm butter. Finally scatter over the crispy sage leaves and chilli flakes or paprika. Serve with crusty bread to mop up the delicious juices.