winget-cli icon indicating copy to clipboard operation
winget-cli copied to clipboard

Portable App installation fails when temp path is on a different disk

Open Huhni opened this issue 2 years ago • 1 comments

Brief description of your issue

When setting the environment variables TEMP/TMP to a different hard drive such as F:/Temp all portable winget installs will result in the following error:

An unexpected error occurred while executing the command:
copy_file: Access is denied.: "F:\Temp\WinGet\xxx\extracted\xxx", "C:\PortableApps\Winget\xxx\platform-tools"

The directories are created and it isn't an issue of missing privileges, just the contents aren't copied over. Setting the installation location to F:\PortableApps works as expected.

Steps to reproduce

  1. Set your TEMP and TMP user environment variables to another disk, for example F:/Temp
  2. (Make sure the install location isn't on the same disk as your TEMP directory, by setting "portablePackageUserRoot" or adding the --location option during install)
  3. install a portable package, for example winget install Google.PlatformTools --location 'C:\PortableApps\Winget'

Expected behavior

The package gets extracted and moved into the specified directory.

Actual behavior

Only the directory is created, but without contents and the following error is shown:

An unexpected error occurred while executing the command:
copy_file: Access is denied.: "F:\Temp\WinGet\Google.PlatformTools.34.0.1\extracted\platform-tools", "C:\PortableApps\Winget\platform-tools"
Portable install failed; Cleaning up...

Environment

Windows: Windows.Desktop v10.0.22621.1485
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.19.10173.0

Huhni avatar Apr 11 '23 10:04 Huhni

I had a similar issue because I was using a DevDrive. I had to enable the WinSetupMon filter using the following command:

fsutil devdrv setFiltersAllowed "WdFilter, WinSetupMon"

MatthewSteeples avatar May 08 '24 17:05 MatthewSteeples