Ask HN: Generic cross-platform package and environment manager?

3 points by darkvertex ↗ HN
First time asking here. Hi everyone!

At my employer (a visual effects house) we use CentOS, Windows and OSX, with various softwares. The internal code is mostly Python, but there's a bit of C as well.

We are looking for a generic package manager for internal use that can resolve package dependencies and assemble environments with specific versions to make our dev life a little better.

We're currently considering Rez: https://github.com/nerdvegas/rez which (if you've never heard of it) is a Python-powered, software-agnostic, platform-agnostic packager, dependency resolver and environment prep'er.

It's a cool project, but some of us are convinced that someone must have solved the problem of cross-platform packaging and environment handling already.

So far, the only similar project I've found is "conda": http://conda.pydata.org/docs/

Do you guys know any others? What do you use and/or like? I'm all ears.

6 comments

[ 3.4 ms ] story [ 24.9 ms ] thread
Nix is really cool. The language can seem intimidating, but if you read the manual it's quite straightforward.
It looks great but without decent Windows support, it falls short for our use case. :/
A while back mdz blogged about difficulties confronting Ubuntu and other Linux circulations. He raises the point that runtime libraries for Python/Ruby and so on have a novel arrangement of issues since they have a tendency to have their own bundling frameworks. From that point forward the discussion appears to have dried up.Platforms, for example, antivirus scanners, node.js, Python, Clojure et cetera care an incredible arrangement about getting their product out to their clients. They think about making it to a great degree simple to get the most recent and most prominent forms of their libraries.

Visit: http://www.platooh.com/vendors

Do you have a link to the blog article you speak of? I fail to see the relevance of this "platooh" thing you linked. (In fact, I dare say it comes off as kind of spammy.)
I like conda for managing different environments and especially for having different npm environments so `npm install -g` doesn't pollute by actual global environment.
Is there anything where conda falls a bit short? Any caveats you have found? I've barely touched it but on the surface it seems good.