Warm milk (105-110 degrees F.) and add packet of yeast. Add a pinch of sugar, stir to combine, and allow to sit for 5 minutes. Yeast should froth slightly.
Add sugar, butter, and eggs to bowl of electric mixer. Mix until combined. Add salt and flour. Combine. Pour in milk/yeast mixture and switch to dough hook of mixture. If not using mixer, hand knead. Mix (or hand knead) for 5-10 minutes. Dough will be sticky.
Place dough in an oiled or buttered bowl. Cover and place in a warm location (such as oven with light on). Allow to rise for 1 hour (or until doubled in size). Punch down and allow to rise for additional 15 minutes.
Roll out dough on a floured surface (to approximately 18" x 12"). Combine butter with sugars and spices. Spread evenly across dough. Sprinkle with apples and walnuts.
Rolling from the long edge, carefully roll dough up tightly. Use a sharp knife to cut cinnamon rolls (about 1 1/2" thick) and place in an oiled or buttered 9x13 dish. Cover and allow to rise again for 1 hour.
Preheat oven to 350 degrees F. and bake for 20 minutes. Don't over-bake.
In a mixer, cream together butter, cream cheese, powdered sugar, and salt until smooth. Pour over warm cinnamon rolls. Optional: garnish with diced walnuts.