I’m sure if some source code were available for the installing scripts/programs their step loop will look something like this:
for file in some_lengthy_list:
installFile(file, someLocation)
progressBar.step()
sleep(500) # Flux with the user's mind, cause havoc, w00t.
This rant bought to you after spending 4 hours of re-setup.