Well, it's not so uncommon.
For instance, OpenBSD, NetBSD repos are sort of monolithic. And, believe it or not,
there are some advantages. For instance, let's take a look at OpenBSD 5.5 [0] release
notes:<p>> OpenBSD is year 2038 ready and will run well<p>> beyond Tue Jan 19 03:14:07 2038 UTC<p>OpenBSD 5.5 was released on May 1, 2014. While Linux is still "not quite there yet"
y2038-wise. y2038 is a very complex issue, while it may look simple - time_t and clock_t
should be 64-bit. This requires changes both on the kernel -- new sys-calls interfaces
[stat()], new structures layouts [struct stat], new sizeof()-s, etc. -- and the user space
sides. This, basically, means ABI breakage: newer kernels will not be able to run older
user space binaries. So how did OpenBSD handle that? The reason why y2038 problem looked
so simple to OpenBSD was a "monolithic repository". It's a self-contained system,
with the kernel and user space built together out of a single repository. OpenBSD folks
changed both user space and kernel space in "one shot".<p>IOW, a monolithic repository makes some things easier:<p>a) make a dramatic change to A<p>b) rebuild the world<p>c) see what's broken, patch it<p>d) while there are regressions or build breakages, goto (b)<p>e) commit everything<p>[0] <a href="http://www.openbsd.org/55.html?hn" rel="nofollow">http://www.openbsd.org/55.html?hn</a><p>[UPDATE: fixed spelling errors... umm, some of them]<p>-ss