Heat the oil in a big frying pan. Fry the garlic and onion gently until soft. Add the bacon and then the meat. Break it up with a fork and fry it, turning it, to brown it evenly.
Add the tomatoes, tomato puree, basil and seasoning. Stir well, put a lid on the pan and simmer for 20 minutes.
Heat some water in a large saucepan. Add salt and a teaspoon of oil to it, to stop the spaghetti sticking together.
When the water boils, put in the spaghetti. Push it gently into the pan, it will slide down as the ends soften.
Cook the spaghetti for 8-10 minutes until soft but not soggy. Then drain it well in a colander over the sink.
Put the spaghetti in a warm dish and pour the meat sauce on top. Mix it all together.
Serve the spaghetti with grated cheese to sprinkle on top and a green salad.