PowerShell / PowerShell/PSResourceGet
AllUsers scope doesn't work if umask is set.
Open
Nobody has claimed this yet.
Area-Install
Issue-Bug
Needs-Attention :wave:
- Dominant language
- C#
- Stars
- 576
- Forks
- 114
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 7
Description
Prerequisites
- Write a descriptive title.
- Make sure you are able to repro it on the latest released version
- Search the existing issues.
Steps to reproduce
Running on a linux machine
- running from a root bash shell
umask 0027pwshInstall-PSResource Az -Scope AllUsersGet-InstalledPSResource Az -Scope AllUsers- Notice that module is found
- In non-root pwsh:
Get-InstalledPSResource Az -Scope AllUsers - Notice that the module is not found
- In root bash shell:
chmod -R a+rX /usr/local/share/powershell/ - In non-root pwsh:
Get-InstalledPSResource Az -Scope AllUsers - Notice that the module is now found
Expected behavior
Module is available in root and non-root pwsh
Actual behavior
Module only available in root pwsh
Error details
PS /home/nfaulkne> Get-InstalledPSResource Az -Scope AllUsers
Get-InstalledPSResource: No match was found for package 'Az'.
PS /home/nfaulkne> Get-Error
Exception :
Type : Microsoft.PowerShell.PSResourceGet.UtilClasses.ResourceNotFoundException
Message : No match was found for package 'Az'.
HResult : -2146233088
TargetObject : Microsoft.PowerShell.PSResourceGet.Cmdlets.GetInstalledPSResourceCommand
CategoryInfo : ObjectNotFound: (Microsoft.PowerShel…edPSResourceCommand:GetInstalledPSResourceCommand) [Get-In
stalledPSResource], ResourceNotFoundException
FullyQualifiedErrorId : InstalledPackageNotFound,Microsoft.PowerShell.PSResourceGet.Cmdlets.GetInstalledPSResourceComma
nd
InvocationInfo :
MyCommand : Get-InstalledPSResource
ScriptLineNumber : 1
OffsetInLine : 1
HistoryId : 1
Line : Get-InstalledPSResource Az -Scope AllUsers
Statement : Get-InstalledPSResource Az -Scope AllUsers
PositionMessage : At line:1 char:1
+ Get-InstalledPSResource Az -Scope AllUsers
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
InvocationName : Get-InstalledPSResource
CommandOrigin : Internal
ScriptStackTrace : at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo :
0
1
Environment data
PS /root> Get-Module Microsoft.PowerShell.PSResourceGet; $PSVersionTable
ModuleType Version PreRelease Name ExportedCommands
---------- ------- ---------- ---- ----------------
Binary 1.0.4.1 Microsoft.PowerShell.PSResourceGet {Find-PSResource, Get-InstalledPSResource, Get-PS…
Key : PSVersion
Value : 7.4.5
Name : PSVersion
Key : PSEdition
Value : Core
Name : PSEdition
Key : GitCommitId
Value : 7.4.5
Name : GitCommitId
Key : OS
Value : Ubuntu 22.04.3 LTS
Name : OS
Key : Platform
Value : Unix
Name : Platform
Key : PSCompatibleVersions
Value : {1.0, 2.0, 3.0, 4.0…}
Name : PSCompatibleVersions
Key : PSRemotingProtocolVersion
Value : 2.3
Name : PSRemotingProtocolVersion
Key : SerializationVersion
Value : 1.1.0.1
Name : SerializationVersion
Key : WSManStackVersion
Value : 3.0
Name : WSManStackVersion
Visuals
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 listed Install-PSResource and Get-InstalledPSResource commands on Linux with umask 0027, comparing root and non-root sessions. Trace the AllUsers installation and discovery paths; done means the Az module is available to both sessions without manually running chmod on /usr/local/share/powershell/.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, linux, powershell
- Domain
- cli, operating-systems, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100