Cook the diced bacon over medium heat until crispy. Remove half for garnish; leave the rest for flavor.
Add onion to the bacon grease; cook until soft. Stir in garlic and thyme.
Add potatoes and broth. Bring to a boil, then reduce heat and simmer until potatoes are tender (15–20 minutes).
Use a potato masher or immersion blender to partially mash the potatoes (leave some chunks for texture). Stir in kale or cabbage and cook until wilted (3–5 minutes). Add heavy cream if using.
Ladle into bowls. Garnish with reserved bacon, green onions, and a sprinkle of cheese. Serve with buttered bread.
