Relevant area(s)
WinGet CLI
Description of the new feature / enhancement
I find it burdensome that WinGet just scatters packages throughout the system. The user then has to scour through directories trying to find the installed package or recall what they even have installed in the past. There is:
- The usual C:\ProgramData\Microsoft\Windows\Start Menu\Programs that points to C:\Program Files
- C:\Program Files\WinGet\Links that points to C:\Program Files\WinGet\Packages
- PATH that seems to also point to C:\Program Files\WinGet\Packages
- More?
Here's an example of what I'm talking about. WinGet creates a link under WinGet\Links for this package:
[CLI ] Extracting archive to: C:\Users\usr\AppData\Local\Temp\WinGet\CGSecurity.TestDisk.7.3\extracted
[CLI ] Successfully extracted archive
[CORE] Created target install directory: C:\Program Files\WinGet\Packages\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe
[REPO] Creating new Portable Index with version [Latest] at 'C:\Program Files\WinGet\Packages\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe.db'
[CORE] Renaming directory to: C:\Program Files\WinGet\Packages\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe\testdisk-7.3-WIP
[CORE] Symlink created at: C:\Program Files\WinGet\Links\fidentify_win.exe with target path: C:\Program Files\WinGet\Packages\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe\testdisk-7.3-WIP/fidentify_win.exe
...
[CORE] Symlink created at: C:\Program Files\WinGet\Links\testdisk_win.exe with target path: C:\Program Files\WinGet\Packages\CGSecurity.TestDisk_Microsoft.Winget.Source_8wekyb3d8bbwe\testdisk-7.3-WIP/testdisk_win.exe
[CLI ] Portable target directory already exists in PATH registry: C:\Program Files\WinGet\Links
but modifies PATH for this package:
[CLI ] Extracting archive to: C:\Users\usr\AppData\Local\Temp\WinGet\DMDE.DataRecovery.GUI.4.4.4\extracted
[CLI ] Successfully extracted archive
[CORE] Created target install directory: C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe
[REPO] Creating new Portable Index with version [Latest] at 'C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe.db'
[CORE] Moving portable exe to: C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe\changelog.txt
...
[CORE] Moving portable exe to: C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe\template.txt
[CORE] Appending portable target directory to PATH registry: C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe
[CORE] Install directory added to PATH: C:\Program Files\WinGet\Packages\DMDE.DataRecovery.GUI_Microsoft.Winget.Source_8wekyb3d8bbwe
Proposed technical implementation details
Decide on a location and stick to it. I think the first location makes the most sense because that's where Windows programs have always gone. The second one is also decent but I don't see the point in it when the first one exists? The third one is plain stupid. That's not what PATH is even for, and, according to WinGet's own portable program specs, that shouldn't even happen.
Relevant area(s)
WinGet CLI
Description of the new feature / enhancement
I find it burdensome that WinGet just scatters packages throughout the system. The user then has to scour through directories trying to find the installed package or recall what they even have installed in the past. There is:
Here's an example of what I'm talking about. WinGet creates a link under WinGet\Links for this package:
but modifies PATH for this package:
Proposed technical implementation details
Decide on a location and stick to it. I think the first location makes the most sense because that's where Windows programs have always gone. The second one is also decent but I don't see the point in it when the first one exists? The third one is plain stupid. That's not what PATH is even for, and, according to WinGet's own portable program specs, that shouldn't even happen.