microsoft / microsoft/winget-pkgs
[Package Issue]: Gyan.FFmpeg. user rights are not set for multiuser machine
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 11.1k
- Forks
- 9.7k
- Avg merge
- 1h 32m
- Merged PRs (30d)
- 376
Description
Please confirm these before moving forward
- I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
- I have not been informed if the issue is resolved in a preview version of the winget client.
Category of the issue
Installation issue.
Brief description of your issue
Ffmpeg installs and runs fine but only for the user who installed it.
Installing with "--scope machine" works but only for the user who installs it.
all other users on the same machine receive an "access denied error". this is because the acces rights are set to RX (read execute) for the owner but to nothing for other users.
to fix it this commands can be run:
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffmpeg.exe" /grant Everyone:(RX)
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffplay.exe" /grant Everyone:(RX)
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffprobe.exe" /grant Everyone:(RX)
Steps to reproduce
run from an admin account
winget install --id=Gyan.FFmpeg --silent --accept-package-agreements --accept-source-agreements --scope machine
now run from a normal user account (non admin):
ffmpeg
you get
access denied
To fix this we can grant read and execution rights to all users: run from the admn account this (replace xxxxxx with the installation string.. i think its random)
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffmpeg.exe" /grant Everyone:(RX)
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffplay.exe" /grant Everyone:(RX)
icacls "C:\Program Files\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_xxxxxx\ffmpeg-7.1-full_build\bin\ffprobe.exe" /grant Everyone:(RX)
now run again from normal user
ffmpeg
a bunch of text should come with the programs version info
Actual behavior
run from an admin account
winget install --id=Gyan.FFmpeg --silent --accept-package-agreements --accept-source-agreements --scope machine
now run from a normal user account (non admin):
ffmpeg
you get
access denied
Expected behavior
run from an admin account
winget install --id=Gyan.FFmpeg --silent --accept-package-agreements --accept-source-agreements --scope machine
now run from normal user
ffmpeg
a bunch of text should come with the programs version info
Environment
Windows Package Manager v1.10.340
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.26100.3476
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.25.340.0
Screenshots and Logs
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the machine-scoped installation with winget install --id=Gyan.FFmpeg --scope machine, then test ffmpeg, ffplay, and ffprobe from a non-admin account. The issue identifies the installed executable paths and uses icacls; done means all users can execute the installed tools without access denied.
Written by the indexing model from the issue text.
Assessment
- Domain
- operating-systems, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100