profile: bail out it not bash
misc: add edit_source function