A lot of good stuff has begun to happen in this regard. At least KiCad has a large and pretty decent quality collection of footprints; I think other tools are making similar efforts.
However, I wish they would make it easy to adjust these footprints or make derivatives of them, without having to essentially redraw them.
For a looong time I’ve wanted to apply geometric constraint solving to drawing footprints. This would allow for having a base footprint which defines the constraints and then parameter files could introduce the specific dimensions needed. I’ve been working on it at https://github.com/henrikh/footwork-ecad and the parts are there, but I’d love to collaborate on it with someone :-)