An idea of how to do a seamless switch from Windows to Linux

Here's my (very simplified) understanding of how file systems work:

So, here's my idea:

Expansion of the idea

So, normally when switching operating systems I just copy the home folder to an external SSD or a thumb drive. But this only works because I have a few external SSDs and a lot of thumb drives! The average user doesn't even have a thumb drive.

The idea

So the user (on Windows) would launch some software. It will go through all the risks of Linux, check hardware compatibility, etc. After the user accepts all of those, the software will make a list of all the installed software. It will then slightly shrink the Windows partition to fit a tiny OS made specifically to transition off of Windows:

The computer will reboot to this OS, and then it would start to shrink the Windows partition and make a Linux partition, where all the files could be copied from Windows to Linux.

Post-install experience

After the system is installed, the user will be greeted with a Windows-like OOBE.

Here's a very rough prototype:

Since we made a list of all the software the user had on Windows, we could also automatically install some of it.like

i.e. if the user had Spotify installed, we could automatically install the com.spotify.Client flatpak from Flathub.

Problems

No idea comes without problems. Here are a few I can think of, ordered from hardest to fix to easiest:

Users hate change

Effectively impossible to fix

Users use Adobe software or play games that don't run on Linux

Software could give advice on dual-booting

No user-friendly enough distros

Could make our own distro

Filesystem operations are dangerous

Advise user to make their own backups

Ending notes

There's a pretty good chance someone has already done this. If so, great! I'll quite possibly start working on something like this sooner or later, although it won't be done for a long while.