Seperate repoistory & ccmcache directory on client
If OS supports Dedup.
Enable this feature as a pre-requisite to client installation.
Create a vhdx (mounted as the ccmcache folder.
Create 2 primary folders in this vhdx (repository & cache)
set the repository folder as the cmcache folder for downloads.
subfolder should be named by the guid of the application in console.. not a random folder.. with ".x" designation for the content version.
When applications are executed from ccmcache.. copy those folder contents to a cache matching folder.. and execute from there..
This will prevent hash mismatch when peer sharing files.
enable Deduplication on the vhdx file.. and you no longer need to worry about running out of space every time you distribute a new version of a huge package.