Move System Wide Files to MachineFolder by jshigetomi · Pull Request #27632 · PowerShell/PowerShell · GitHub
Skip to content

Move System Wide Files to MachineFolder#27632

Draft
jshigetomi wants to merge 2 commits into
PowerShell:masterfrom
jshigetomi:perMachineDataStore
Draft

Move System Wide Files to MachineFolder#27632
jshigetomi wants to merge 2 commits into
PowerShell:masterfrom
jshigetomi:perMachineDataStore

Conversation

@jshigetomi

Copy link
Copy Markdown
Collaborator

PR Summary

PR Context

PR Checklist

Justin Chung and others added 2 commits June 24, 2026 14:24
Opt into the WindowsAppSDK per-machine ApplicationData store as an
alternative to mutable package directories. Adds the appdata namespace
(ignorable) plus a Properties/ApplicationData/MachineFolder element with
an SDDL granting Administrators write, and bumps MaxVersionTested to
10.0.26100.0.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
When running as a packaged MSIX app that opts into the per-machine
ApplicationData store (appdata:MachineFolder), relocate the writable
AllUsers locations from the read-only \C:\Program Files\WindowsApps\Microsoft.PowerShell_7.6.3.0_x64__8wekyb3d8bbwe install dir into that store:
module path, system-wide powershell.config.json, AllUsers profiles, and
AllUsers updatable help.

A central helper, Utils.GetPackagedMachineDataStorePath(), detects package
identity (GetCurrentPackageFamilyName) and the provisioned store folder,
returning null when not packaged so all behavior is unchanged for normal
installs. The shipped \C:\Program Files\WindowsApps\Microsoft.PowerShell_7.6.3.0_x64__8wekyb3d8bbwe powershell.config.json is preserved by seeding
the store copy on first write and falling back to it for reads.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant