From XP to recent versions of Windows, with each new version of Windows embedded edition, it reduces the way one can customize an image to fit their specific needs and nothing more. According to current worldwide sustainability goals and commitments, nowadays this type of posture is no longer accepted. - Starting from Windows 10, we have lost a fondamental tool, the Image Builder Wizard (IBW). - DISM is not a replacement of IBW. - Packages are becoming bigger and bigger creating islands of obscurity and lost of granularity. - There are so many free growing complexity meanwhile, we are talking at the end about files and registry entries ! How to reset all this mess according to embedded needs? From where to start (XP/LH pre-reset, post-reset/...)?
Dismantling Windows 10 IoT LTSC 2021 is like sculpture and to reach a 100 MBytes size image it requires both a huge amount of time and the skills of a perspicuous artist. I'm landscaping here a classic engineering approach based on strict construction principles from bottom to top (or 0 to 1 if your prefer) with basic knowledge, clean rules, reproductible results, ....
DISMTools is also promising but to have a way to build lean/tiny custom images (as it was possible with Windows XP), there is a need to create the metadata to define all the "system components" from a minimal image (kernel+native command line) towards base minimal images like for server and client editions. In short "under the surface". AFAIK, this is what has been lost since Windows XP Embedded.
I dont understand what's your goal. Windows is more componentized and more granular today than it was at the time of WES7 or earlier. The only thing we don't have anymore is the official additive building process which was removed after WES8. Since 2015 we have managed to add and remove packages manually using tools like MSMG, install_wim_tweak.exe, SxS v1 and alike. Speaking of WES8 you can have a Win8 reduced image that is actually smaller and lighter than the equivalent image built using IBW, given often the dependency management in IBW does pointless choices that leads to a bunch of installed packages that aren't strictly needed. Speaking of granularity we went from around 1000+ pacakges of Win7/WES7 to 3000+ in the latest Win10 releases But if you miss the addictive process, we have Server Hypercore, Server Core, Azure HCI that are a good base to build a customized windows starting from a relatively minimal image. In short the big change is just the knowledge needed to reach the same goal as WES. Last but not least custom images built using standard windows packages comes with a MAJOR advantage. The ability to do in place upgrades to fix problems, A life savior feature that is unavailable using WES images.
By obscurity, indeed, I'm underlying the lost of knowledge you are referring too and the need to formalize this knowledge (e.g. for ReactOS). By lost of granularity, I'm mainly targeting system components "under the surface" for image size in Megabytes. Last but not least, as with 3D printers, providing a way to enable additive processes will drive innovation far beyond then subtractive processes(like CNC machine) can do and preserve long term freedom. It's really the point to get back on track and not being distracted silently.
Lost of knowledge is more a social thing than something MS enforces. Actual kids are mostly zombies not interested in learning and fatiguing, almost nobody cares of privacy and resource waste. Even places like MDL are famous because the copied and pasted links to ISO images (just look at the likes received by Enthusiast v.s the ones received by people like Xinso, Abbodi, me.... and you'll get the picture., and be sure that's going worse year after year. But that's a different matter....
I know there are extreme examples of tiny windows, but (aside the academical couriosity) are they useful? People use windows because it's windows, if you make it overly skinny the whole point is lost. If you need say a build just to do a DNS or DHCP server, it's way better to use Linux or *BSD, but if you want to build say a RDP client you still need all the 3D, audio, multimedia capabilities, which means A LOT of stuff (the VGA driver alone on current HW is usually 1GB+, not counting the control panel stuff), otherwise you'll get a 2001 basic RDP client, that again would be better served using a minimal Linux and freerdp w/o any plugin Personally I like to invest my time to get in return something that is both academically interesting *AND* useful. (something like this or this ) In short I like to customize, and remove the unneeded/dangerous stuff, but making a barebone OS just to see if it's still able to boot is not my priority
Obviously, these bootleg examples has been listed in my previous post, firstly to illustrate the bottom-up approach as a learning curve (from scratch to barebone) secondly as great technical challenges of mastering minimal dependencies and lastly as you underlined for our kids to understand what's under the hood and ignite some curiosity. Your projects and many others in this forum have in common to reflect great examples and mastering skills with the same creative spirit (e.g. "Adding Gui to Server Core", "Windows Thin PC - Addon Packages" being examples of an additive approach)
Yes, it includes Server editions too. Although there're Server packages on x86, it is not complete and cannot be installed. I tried that several times, however getting a BSOD after first reboot was the best result I got so far.