Hard boil the eggs for 10 minutes. Cool them in cold running water. Shell them, rinse clean, slice thickly and arrange in a greased, heat-proof dish.
Peel and slice the onion, and fry it in the butter in a small saucepan over a moderate heat, until soft (about 5 minutes). Add the tomatoes, salt, pepper, sugar and herbs, and cook gently for a further 5 minutes. Heat the grill.
Pour the tomato mixture over the eggs, top with the de-rinded bacon rashers and place under the hot grill until the bacon is cooked.
If you do not have a grill, fry the bacon in the pan with the onions, remove it and keep it hot while the tomatoes are cooking, then top the tomato mixture with the hot, cooked bacon.