still working on install_software function