Heat the olive oil in a large pot over medium heat. Add the onions and a pinch of salt. Sauté until they’re translucent and soft—about 5 minutes.
Drop in the garlic, carrot, celery, and pepper. Cook for 3–4 minutes, stirring often, until everything smells irresistible.
Add the tomato paste and paprika. Stir for 1 minute to wake up the flavors in the spices.
If you’re using meat, add it now. Break it up as it cooks, until it’s browned and cooked through. If you’re skipping meat, skip this step and move on.
Pour in the broth and the diced tomatoes with their juices. Stir in thyme and bring to a gentle simmer.
Add potatoes and cabbage (or kale). Simmer uncovered for 20–25 minutes, or until the potatoes are tender and the soup has thickened a bit.
Season with salt, pepper, and a splash of hot sauce if you like it bold. Taste and adjust. Serve hot and enjoy.