How I manage packages across systems
After I tried Linux, I saw the convenience of using a package manager. I like how easy it is to install a package just by knowing its name. So I tried to implement this approach on Mac and Windows.
On MacOS there is a wonderful third-party package manager called Homebrew. It has almost all the software I need and I never had issues with it.
On Windows there is now a built-in package manager called WinGet. It is unfortunately missing some software, but it is constantly improving.
It is important to save packages list, this would help you reinstall the system later. Also, some of them have configuration files located in home directory, called dotfiles. I store all of this on GitHub.