Cloudsmith: A Hint of the Future

by Mike Gunderloy - Mar. 31, 2008Comments (6)

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?



Jesse Babson uses OStatic to support Open Source, ask and answer questions and stay informed. What about you?



6 Comments
 

Bitnami is a player here and worth looking into:


http://bitnami.org/


0 Votes

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...


0 Votes

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.


0 Votes

Bitrock is a startup that has good stuff coming in this space:


http://bitrock.com/


0 Votes

I'm a fan.


What's really cool about Cloudsmith is that it's soooo easy to build and then share derivative stacks or distributions - hey, I like your stack but I'm going to tweak it a little and add another component to it and replace this component by that one which is I think better..


And the cloudlinks s in Cloudsmith make it easy to have single click downloads appear in your blog or whatever, ok not a big deal but remember that the download is going out to multiple different software repositories to get all the necessary components.


And cloudfeeds in Cloudsmith make it easy to track changes and notify of updates.


The Cloudsmith people are apparently mapping further repositories other than Java and Eclipse - can't wait.


It's great for building and sharing distros within my team, making sure everyone gets a consistent view of what we're all working on; and its a good way to share distros with everyone in the public domain as well.


Cloudsmith is the future.


0 Votes

Cloudsmith differs from many other stack sites in that anyone can easily and rapidly build their own distro. Cloudsmith doesn't warrant that any distro actually works - but it does report which distros are popular (and thus likely to work) and who is the author of a distro - do if you know that eg Jane is a good guy, then the distros she's using and published are probably OK too.


So the community reinforces what are good distros, and discards the ones which are poor - just like open source.


And Cloudsmith also works fine with closed source too. You can have closed source Cloudsmith stacks, open source Cloudsmith stacks, and mixed source Cloudsmith stacks. Cloudsmith works with the various metadata, and not the software - and documentation, handouts, tutorials, presentations - itself.


0 Votes
Share Your Comments

If you are a member, to have your comment attributed to you. If you are not yet a member, Join OStatic and help the Open Source community by sharing your thoughts, answering user questions and providing reviews and alternatives for projects.