finish removing provider_collection
invert freebsd logic
add a spec