Heat vegetable oil in a large skillet over medium heat.
Add the chopped onion and cook until softened.
Stir in the minced garlic and cook for an additional minute.
Add the ground beef or lamb and cook until browned.
Stir in the diced tomatoes, tomato paste, paprika, ground cumin, dried oregano, salt, and black pepper.
Simmer the mixture for about 15-20 minutes until it thickens. Set aside.
Preheat the oven to 400°F (200°C).
Heat vegetable oil in a skillet over medium heat.
Fry the potato slices until golden brown, then drain on paper towels.
In the same skillet, fry the eggplant slices until softened and golden brown. Drain on paper towels.
Melt the butter in a saucepan over medium heat.
Stir in the flour and cook for 1-2 minutes until it forms a roux.
Gradually whisk in the milk, and continue whisking until the sauce thickens.
Stir in the grated Parmesan cheese, ground nutmeg, salt, and black pepper. Set aside.
In a baking dish, layer the fried potato slices at the bottom.
Spread the meat mixture evenly over the potatoes.
Arrange the fried eggplant slices on top of the meat mixture.
Pour the bechamel sauce evenly over the eggplant layer.
Bake in the preheated oven for 30-40 minutes, or until the top is golden brown and bubbly.
Allow the moussaka to cool for a few minutes before serving. This helps the layers set.
Enjoy your meal!