A list of installed programs forms a web of packages and their dependencies, what you want to install will form constraints of what versions etc. of each package and their shared dependencies that all need to be linked together.
This means your combination of programs you want to install has to be taken into account when you compile everything. If you are relying on the distribution to do the compilation for you and sending you the binaries, they will have had to have accounted for this combination or otherwise are hoping everything just works.
This is why on Debian it is advisable to not mix stable and testing repos, and in arch you keep up or are left behind. In gentoo you are limited only by the compatibility's of the individual packages themselves, not of the specific combiled binaries, and nearly everyone mixes stable with testing or git head all the time. Plus some people like to procrastinate...
You need to be careful here though. You might not intend for
0
andNone
to mean the same thing.