setup everything except the gui
same