too much refactoring to robustly expand ~ in paths, reverting