In a large bowl, combine 2 cups flour, sugar, yeast and salt. Stir in buttermilk (or milk) and vegetable oil. Mix in enough of the remaining (up to 2 cups) flour to make a soft dough.
Transfer the dough on lightly floured surface and knead for a few minutes until smooth and elastic.
Cover the bowl with plastic wrap or a clean tea towel and let rise for about 30 minutes.
Punch down dough. Turn dough out onto a lightly floured surface. Divide dough into 4 equal parts and shape into smooth balls.
Roll each dough ball, one at a time, into a thin 11-inch circle.
Spread about 3-4 tablespoons of Nutella (or the filling of your choice ) on each circle. Cut each circle into 12 equal wedges, as if you’re cutting a pizza. (If using dry filling like raisins, place along the wide end of the wedge.)
Roll the wedges into a spiral; not too tight, but not too loose either.
Arrange the rolls on a baking sheet, lined with parchment paper or silicone mat.
Cover with plastic wrap or clean towel, and let rise for about 20 minutes.
Meanwhile, preheat the oven to 350°F (177°C).
Bake the rugelach for about 20 minutes, or until nice and golden brown. Cool completely before serving. Dust with powdered sugar (optional).
Store cooled pastry in an airtight container for up to 3 days. These also freeze well. To freeze, place the rugelach in a freezer bag and freeze for up to 2 months. Bring it to room temperature before serving.