add --preinstall support