What the heck tho, how could a simple script destroy a whole machine?
When a software package installer isn't designed to be reversible
I recall a bunch of antiviruses being similarly difficult to completely wipe
It isn't as hard apparently. The script follows the manual way, just delete the folder it's in. What is a problem seems to be changing the path - extracting, changing and reapplying the path variable seems to need 90 lines of Powershell alone. That's just crazy. I'm also wondering how other programs write themselves into path without needing warnings and backups of the path for the user to restore.
It doesn't say that.
If you setup your system with Chocolatey (is a package manager for Windows), removing Chocolatey will break your setup (removing all installed packages).
Seriously, this script may destroy your machine and require a rebuild. It may have varied results on different machines in the same environment. Think twice before running this.
I don't think "machine" is defined as "installed packages". And reading the code of the script, the breaking part is the whole script, as 90 lines are literally just for the purpose of getting, changing and reapplying the path variable. It (or rather the system and user one) are also backed up to C:\PATH_backups_ChocolateyUninstall.txt.
So it's still a wonder for me how removing something from path, or adding for that matter, is so complicated. Linux just has /usr/bin and /usr/local/bin for custom scripts/programs globally, and .local/bin for user specific executables. If you really want custom paths for your special application then add a script in /etc/profile.d/. No need to permanently change a global variable that could easily break your system at any time.
TL;DR Windows is dumb for having global PATH variables without a way to expand them modularly, which would be much safer.
What the heck tho, how could a simple script destroy a whole machine?
When a software package installer isn't designed to be reversible
I recall a bunch of antiviruses being similarly difficult to completely wipe
It isn't as hard apparently. The script follows the manual way, just delete the folder it's in. What is a problem seems to be changing the path - extracting, changing and reapplying the path variable seems to need 90 lines of Powershell alone. That's just crazy. I'm also wondering how other programs write themselves into path without needing warnings and backups of the path for the user to restore.
It doesn't say that.
If you setup your system with Chocolatey (is a package manager for Windows), removing Chocolatey will break your setup (removing all installed packages).
I don't think "machine" is defined as "installed packages". And reading the code of the script, the breaking part is the whole script, as 90 lines are literally just for the purpose of getting, changing and reapplying the path variable. It (or rather the system and user one) are also backed up to
C:\PATH_backups_ChocolateyUninstall.txt
.So it's still a wonder for me how removing something from path, or adding for that matter, is so complicated. Linux just has /usr/bin and /usr/local/bin for custom scripts/programs globally, and .local/bin for user specific executables. If you really want custom paths for your special application then add a script in
/etc/profile.d/
. No need to permanently change a global variable that could easily break your system at any time.TL;DR Windows is dumb for having global PATH variables without a way to expand them modularly, which would be much safer.