we could auto-find MCAD and provide better d/l instructions for it. (git submodule doesnt always work and... some builds (mingw cross, out of tree) require setting OPENSCADPATH, which they could find automatyically)
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
I think bundling MCAD with OpenSCAD was a mistake. Given that MCAD is static, it hasn't yet backfired though.
Anyway, libraries should be changing faster than OpenSCAD itself, so they should be decoupled.
Having a way of finding, downloading, versioning and syncing libraries would be cool. I've made some thoughts about things like library browsing, hosting and versioning - versioning using git, hosting from places like Thingiverse, having our own "authorative" hosting server, auto-download on include etc.
Keeping libraries updated outside OpenSCAD release cycles would be nice. For package-managed systems, we could lean on existing versioning and synchronization frameworks. For binary downloads less so.
We could probably talk directly to e.g. github using their API from the OpenSCAD binary though. The upside for that would be that people could add their own data sources directly.
A lot of libraries are currently maintained by their authors on Thingiverse. A similar synchronization mechanism could be used through their API.
I experimented a bit on a package system for OpenSCAD using nix, http://nixos.org/nix/, but did not get it to work as I would have liked.
The advantage of that would be to not have to reinvent package management again. Plus nixpkgs already offers a way to get a package from a git repository. Also interfacing thingiverse should be possible without to much effort.
At the moment I do not have time to pursuit this idea further, if someone is interested, I can try to detail a bit what I did, what worked and what didn't.