Files
Justin Ma a674ce2dbc Update winget default INSTALLDIR for per-machine install path (#16026)
# Description

- Update `winget` default INSTALLDIR for per-machine install path to `
C:\Program Files\nu`

# User-Facing Changes

These changes, along with the manifest update PR (such as [this
example](https://github.com/microsoft/winget-pkgs/pull/266009/files)),
will resolve [issue
#15949](https://github.com/nushell/nushell/issues/15949) and add
`--scope` flag support for `winget install`.

After these changes are merged, the following should occur:

1. When no `nu` is installed, `winget install --id Nushell.Nushell
--scope machine` will install Nushell to `C:\Program Files\nu`.
2. `winget update --id Nushell.Nushell` will upgrade Nushell to the
latest version with machine scope.
3. When no `nu` is installed, `winget install --id Nushell.Nushell` will
install Nushell to `%LOCALAPPDATA%\Programs\nu`.
4. Due to [winget-cli issue
#3011](https://github.com/microsoft/winget-cli/issues/3011), `winget
update --id Nushell.Nushell` will unexpectedly install the latest
version to `C:\Program Files\nu`. The workaround is to run `winget
install --id Nushell.Nushell` again to install the latest version for
user scope.

# Tests + Formatting

1. Nushell install from MSI tests:
https://github.com/nushell/integrations/actions/runs/16088967701
2. Nushell install by Winget tests:
https://github.com/nushell/integrations/actions/runs/16088814557
3. Nushell Upgrade by Winget tests:
https://github.com/nushell/integrations/actions/runs/16088967705 and
test script:
https://github.com/nushell/integrations/blob/main/tests/test-all.nu

# After Submitting

The manifest files need to be updated manually for the next release, and
I will do that.
2025-07-07 08:10:07 +08:00
..