need use for non-login shells as well