The customer suggested creating a meta repository that has all the necessary dependencies. This way the customers would need only one package listed in their composer.json file and this would make upgrading to the new versions easier (no diff would be required, just changing the version of meta repository in composer.json file).
The preferable way would be to have multiple meta repositories: ezplatform, ezplatform-ee, ezplatform-demo and ezplatform-ee-demo (the last two because some customers prefer using all the bundles included in the demo).
The customer currently uses "ezsystems/ezplatform-ee-demo" as their meta repository, but it causes issues since it includes the whole project and not only dependencies.
This story has been linked to Symfony Flex Epic as the move there will force us to clean up our root meta repository and allow for installation eZ Platform via composer (with help from symfony flex composer plugin to add things to installation that we need in a clean way)_, custom installers should be rather easy to do once we get there as well, allowing developers to request a custom installer which again will depend on the meta packages that effectively represent eZ Platform. Demo can be setup like this, same with ee demo.
That said the need here is generic, and does not depend on symfony flex to happen first for other reasons then timing and resources considerations.