Depends on your App.
I guess you can say that in most cases the initialState comes from the server and is loaded into the App, this is the fastest and best way.
If you don't have anything to add from the server, the reducers are the best option i guess. Since you can be sure that there is nothing in the initialState which isn't handled by reducers ;)