So a couple of things. First off, this is using AWS for two important services. That is probably a no go for a whole bunch of people right away.
But where it really lost me is that it is "yet another thing with a custom installer" or YATWACI (tm). Let me say it again: if you want wide adoption of your software, get it $@&!ing packaged for popular OS's. It is not hard, and is way nicer than "well first, create a virtualenv..."
I doubt wide adoption of a tool used internally is at the top of the Netflix devs priority list. It solves an internal need and it does not hurt to throw some code over the wall, so why not toss it on github and see if you can get some free labor.
FPM-created packages suck. They often have incorrect metadata format, most of
the time they don't have any dependencies encoded, they often have crappily
written initscripts (less of a problem today, with systemd everywhere) and
similar infrastructural things.
All that while writing RPM specs and proper(ish) debianization are quite easy.
> (less of a problem today, with systemd everywhere)
Systemd is far from everywhere. Ubuntu 14.04 doesn't use it and is supported until 2019. Debian Wheezy is supported until 2018. RHEL 6 has support through to 2021.
Overall this means it'll start to be reasonable to presume systemd sometime around 2020, and be realistically almost everywhere from say 2025.
Software changes take 5-10 years to roll out everywhere. This is such a core change that it'll be on the longer side.
Even though I agree with you here (I still use Wheezy, personally and
professionally), most projects don't target that old releases, so they build
mainly for modern mainstream (Debian/Ubuntu and Red Hat/CentOS), which means
systemd.
And that still doesn't change the fact that most programmers produce shitty
packages, if any, so every time I use somebody's software I need to package it
myself to have it properly built.
And for each and every package/project I would need convince the maintainer
that he doesn't understand what he's doing, he's doing it wrong, and he should
learn a correct method? Because it all boils to this (barring a more polite
way of stating the fact).
Getting something correctly packaged for popular OS's is not as easy as it may seem. Even Torvalds famously gripes about it. Luckily, there's no need for that here since it can be distributed as a Python package. The project already uses setuptools (in setup.py) so it's most of the way there.
The biggest problem with that is CADT among the toolkit lib devs, that in combination with rigid dependencies in distro package managers leads sprawling permutations.
But where it really lost me is that it is "yet another thing with a custom installer" or YATWACI (tm). Let me say it again: if you want wide adoption of your software, get it $@&!ing packaged for popular OS's. It is not hard, and is way nicer than "well first, create a virtualenv..."