better looking for MCAD on tests #306

Open
donbright opened this Issue Mar 13, 2013 · 5 comments

Projects

None yet

5 participants

@donbright
Member

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.

@donbright donbright was assigned Mar 13, 2013
@kintel
Member
kintel commented Mar 13, 2013

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.

@hroncok
Contributor
hroncok commented Mar 13, 2013

Having a GitHub repository openscad-libraries with nothing but
submodules seems like a good place to start. Tell people to create a
GH repository with the library with README in specific format. Then
you can easily create a GH page that list libraries and include that
in OpenSCAD somehow. I can provide help with the GH part.

@kintel
Member
kintel commented Mar 13, 2013

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.

@tbuser
tbuser commented Mar 13, 2013

It would also be nice if you could specify the version of a library your
script needs. I haven't run into this too many times, but a few times
someone had an older version of one of my libraries and downloaded a script
that used it which didn't work without the latest library.

I'm fond of the way Bundler handles this kind of thing in ruby:
http://gembundler.com/ It handles ruby gems from a central repository as
well as specifying a git location/branch, or a local filesystem path, etc:
http://gembundler.com/v1.3/gemfile.html

On Wed, Mar 13, 2013 at 4:31 PM, Marius Kintel notifications@github.comwrote:

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.

?
Reply to this email directly or view it on GitHubhttps://github.com/openscad/openscad/issues/306#issuecomment-14866641
.

@jreinhardt

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.

@donbright donbright removed their assignment Mar 5, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment