That's the same relay board I have been using for the last 3 years in Coop Uno and for 6 months in Coop Deux.
Programming is simpler with a relay. Using a motor shield with a gear motor is a waste of time and effort as there is no need to go slower than 5 RPM.
I would start with the raspberry pi 3b+, relay board, 12vdc power supply, gear motor. Get that running with a manual switch then add the other items. Limit switches just depend on how you plan on mounting them, either one will work. Just keep in your mind that the magnetic switch needs to be fairly close to work and well so does the micro switch.
The Rpi does need a connection to the Internet to get the date and time when booting up if you plan on using the astral library to get sun events for your location.
You need a keyboard, mouse and monitor to setup the Rpi.
Break this down to the simplest thing and start there, adding on as you learn.
Do you have a PC running Linux?
Do you have a LAN?
JT