First make the crust. In a large bowl, sift the flours with the baking soda, cinnamon and salt (if using). Stir in the sugar.
Add the cold butter cubes and rub it into the flour mixture until it resembles coarse breadcrumbs and there is no dry flour left. This could take a couple of minutes.
Remove 3/4 cup of this mixture and place it in the fridge to use as the crumble topping later on.
To the remaining mixture in the bowl, add the ice water and bring it all together into a soft dough that holds together. You may not need all of the water, so add it slowly.
Place the dough on a large piece of clingfilm, pat it into a disc, cover and chill for 30 minutes.
In the meantime, peel and slice the peaches (not too thin or they'll become mushy). Toss them with the brown sugar in a small bowl and refrigerate while the dough is chilling.
Preheat the oven to 180 C and line a 9x5 loaf tin with non-stick or greased baking paper, leaving a little overhang for easy removal.
Now unwrap the chilled dough and then place it in the bottom of the pan. Spread it out evenly, pressing down as you go, making sure it's right up to the corners. The dough is not sticky and will yield easily.
Spread the peaches over the dough. Then toss the walnuts into the reserved crumble topping from step 3 and sprinkle it all over the peaches. Press down lightly to help it stick.
Bake for 30 to 35 minutes until the top has browned, leaving it in the oven for a few more minutes if needed.
Allow the shortbread to cool in the pan for 15 minutes, then lift it out using the paper overhang and place on a wire rack to cool completely. Slice into 8 bars and serve with vanilla ice cream!
Store at room temperature in an airtight tin for 1 to 2 days after which it is best to transfer them to the fridge for a week, or in the freezer for longer. Happy baking!