What user of open source has not wrestled with software installation at one time or another? If you're not tracking down conflicts or hunting for the download site for the current version of something, you're chasing dependencies in a seemingly-endless chain. Perhaps this is a symptom of the decentralized and rapidly-moving nature of open source - or perhaps not. Cloudsmith (in seemingly-eternal beta) suggests that there might be a way to get past at least some of the installation pain points.
Even though you can click on an icon on Cloudsmith to install software (say, the development kit for Google Android), it's not a software repository in the traditional sense of sites like SourceForge or RubyForge. Rather, it's a repository of software metadata: it stores information on where components come from, and the dependencies between different components. Any registered Cloudsmith user can assemble components to create their own software distribution, which is meant to be a complete package including dependencies necessary to install something.
Dependency checking, of course, is not new to open-source software install tools, from apt-get to gem. But what is distinctive here is that Cloudsmith can accomodate software using a variety of different install techniques, and even non-software assets like separate documentation, in the same distribution. In theory, this could allow developers to include all the dependencies in their package, even if they depended on a multitude of different technologies (which seems to be increasingly likely these days).
Cloudsmith itself is more of a proof of concept than a fully-useable universal system. Based on Eclipse technology, its current crop of distributions is heavy on Eclipse and Maven components, and light on everything else. I also think their tools for actually finding what's in Cloudsmith could use improvement. But as a general notion to make things easier, I think it shows promise.
What about you? Do you find yourself wrestling with cross-language and component installation issues enough to make a metadata repository useful? As a developer, would you take the time to specify your work for something like Cloudsmith? Or are you content just telling users what your package's dependencies are and letting them go chase on their own?
Comments
Add CommentBy on Mar. 31, 2008
Bitnami is a player here and worth looking into:
http://bitnami.org/
By on Mar. 31, 2008
It really comes down to how many such applications are FULLY supported. I mean, the benefit of using tools like yum or apt-get is that they just basically do the work for you on Linux/RH.
There are so many RPM sites out there (rpmfind, pbone, etc.) that do a lot of the work, but then again, they are just hard to navigate, and sometimes, you may have compiled something in and want to update it (php configs, anyone?).
Will watch out for this one...
By on Apr. 01, 2008
Guys like SpikeSource are selling stacks of pre-configured software to ease the pain of installations and configurations of popular apps. There are often times just way to many configurations to worry about. Surprisingly, the (./configure; make install; make) just seems to work most times, but if you are missing dependencies, the setup can be painful for noobs.
Solutions like this are critical for mainstream adoption.
By on Apr. 01, 2008
Bitrock is a startup that has good stuff coming in this space:
http://bitrock.com/
Share Your Comments
Trackback URL
http://ostatic.com/trackback/158773