Let me lead by describing the situation of this project a bit. There are a total of 5 of us who spend our time on this project. One spends all his time here in the forum and writing documentation, another spends most of his time developing in github, and the rest of us are attempting a balancing act between forums, github, documentation, etc.
A few months ago, we started counting the number of active ip addresses checking in for newer versions of zoneminder. These are just the ip addresses which have this feature enabled under options (many distros turn this check off in their packages). Based on that data we know we have 50,000 systems running ZoneMinder, right this very instance. The next release of ZoneMinder will have a telemetry daemon, which will tell even more so we can focus on the most popular features. For those who don't like the idea of sending us data, it can be easily turned off too.
That gives us a ratio of 5 to 50,000 who are volunteering their free time to support this project. So we know that ZoneMinder has already taken off. The root problem to making further development is a time/money problem. We all have normal jobs we need to perform to earn a living, which means this project won't get priority. We also don't have a lot of time to do more than we are already doing, which means requests like the one just proposed are not likely to happen unless someone new decides to step in and help. I've stated things like this before, and some get angry about it. Recall this is a time/money thing, and not a "your idea sucks" kind of thing. There are many good ideas, but many of them won't get implemented because there is no one available to do the work.
Back more back on to the topic....
There is a computer science professor from Germany, who goes by the name of altaroca, who contributed ONVIF discovery to ZoneMinder. It'll be in the next release, but be warned this is a new feature, getting exposed to a large number of cameras for the first time. We've already found and fixed some issues discovering certain cameras, and I would not be surprised if there will be more. There is another thread in this forum that discusses ONVIF motion detection. That isn't ready to even be brought into the project yet. If you want to help, right now your best bet would be to contact her through her blog site:
https://altaroca.wordpress.com/2014/06/ ... oneminder/
The server configuration I recommended earlier is based off my own server. The number of cpu cores is better than high cpu clock speed, so buy as many cores as you can afford. It just so happens that off lease servers are very, very cheap and have lots of cores. They just aren't much to look at. To get a more precise idea of hardware requirements, run one camera and observe how much cpu resources it uses. Let's say its 20%. Let's say you don't want your cores to get busier than 80% (that's probably still too high). That means you can get 4 cameras per cpu core and then you know how many cameras your hardware will support. Yes, I know the question was really how to determine that before buying the hardware, but that gets us back to someone stepping up and doing the work to develop a set of benchmarks.
I've been using ZoneMinder since about 2006, and back then there were no packages. You had to build from source and the forums were filled with all the issues dealing with that. Moving ahead today, we have ZoneMinder packages for the major distros and documentation to go along with that. Follow the distro specific documentation, and you will get ZoneMinder running without any issues. We also have prebuilt ZoneMinder images which you can get off bittorrent and run on a (virtual) machine. So as far as turnkey, I'd say we are already there.
If by turnkey you mean something like my pfsense firewall, where the web console alerts me to an upgrade and I just click upgrade, then that
is not something on our roadmap. That would require a dedicated image, where zoneminder was the only thing running on the machine, the underlying Linux distro was chosen for you, the database engine was always the same and configured the same, the web server engine was the same and is always configured the same, etc. You would have to force the end user into a one-size fits all scenario. It does sound like a nice idea, but not everyone would want that. This is one of those things that might make a nice project for someone to work on.