I don't know why people are dismissing this as non-viable or complex.
For example, a typical Windows deployment is 15-20GB after being extracted from an ISO image that's essentially static. There's monthly updates, which are also monolithic multi-GB patches that wholesale replace system files.
This is basically like a Docker image, but with the Kernel and drivers included in the base layer...
.. but without any of the niceties of dockerfiles, such as precisely tracking what differences have been applied!
The Windows registry could be split into a "system base hive", a "patch hive", and then a "customisations hive" on top.
Similarly, Linux filesystems could keep a base copy of the "/etc" directory and then any changes on top in something like a unionfs or docker image like overlayfs.
Modern phone operating systems more-or-less work like this, so it's definitely possible.
In the distant past of 40MB hard drives, this approach would have been wasteful. In the era of 5GB patches... does it really matter?