5 ms·
I feel Python apps is quite a pain to install. I had to deal with a Graphite installation, and it consists of 50% packages from apt-get and 50% of packages from
by kawsper 13y ago
I feel Python apps is quite a pain to install. I had to deal with a Graphite installation, and it consists of 50% packages from apt-get and 50% of packages from easy_install.
https://gist.github.com/kaspergrubbe/5792356 https://gist.github.com/kaspergrubbe/5792356
Is this an issue with Graphite? Because I feel this setup is quite elaborate compared to using Rubygems and bundler.
- shabble 13y agoThat's a rather alarming install script, especially things like: sudo apt-get --assume-yes upgrade in it. But to your point, I think most of the easy_install packages could be handled by pip. The apt packages look like almost all non-python major components like rabbitmq, apache, sqlite, etc which are best provided that way. I'm not sure about Graphite itself, but at a quick glance it's not clear why it's all 'sudo python setup.py' rather than in a package.
- gingerlime 13y agoFrom experience with both python/django and ruby/rails, I think python is generally simpler. Start with the fact that python itself is usually pre-installed on most distros, and usually a recent-enough version to get you started. Ruby on the other hand is much harder to just get installed, choosing the right (minor)version, rvm/rbenv choices etc. I tend to compile my ruby, but it's a lengthy and rather fragile process. Graphite is both a good and bad example. Good because it is really complex and documentation is a little sketchy. I've written a fabric script[1] that automates the process, and it's far from trivial. Bad example, because it's not really a single app, but a system - a collection of tools with dependencies. Even if we discount the web server (nginx or apache?), it includes things like the core "database" (whisper), the event listener (carbon, which in itself is complex depending on your setup), the graphic and processing libraries, and then graphite which is a pretty involved django app with its own sub-components. So when you say graphite, it's really a full-blown system with lots of moving parts that need to fit in together. I can't think of an equivalent example in the rails world, but any rails app with a db, caching layer, and a few other external components won't be much easier to get set up and running. [1]https://github.com/gingerlime/graphite-fabric https://github.com/gingerlime/graphite-fabric
- pekk 13y agoThis is an issue with Graphite. There is no way that Python can fix Graphite's install breakages unless Graphite wants to fix them.
- keypusher 13y agoI guess that's because you can't pip install system packages, only Python packages.