-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Spec] WinGet configure export and import settings #3694
base: master
Are you sure you want to change the base?
[Spec] WinGet configure export and import settings #3694
Conversation
@check-spelling-bot Report🔴 Please reviewSee the 📂 files view or the 📜action log for details. Unrecognized words (1)rdmaclachlan Previously acknowledged words that are now absentattr DMPAs dsc fabricbot remoting Syncy timezone wfopen :arrow_right:Some files were automatically ignoredThese sample patterns would exclude them:
You should consider adding them to:
File matching is via Perl regular expressions. To check these files, more of their words need to be in the dictionary than not. You can use To accept ✔️ these unrecognized words as correct and remove the previously acknowledged and now absent words, run the following commands... in a clone of the [email protected]:RDMacLachlan/winget-cli.git repository curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.21/apply.pl' |
perl - 'https://github.com/microsoft/winget-cli/actions/runs/6328774832/attempts/1' Available 📚 dictionaries could cover words not in the 📘 dictionaryThis includes both expected items (556) from .github/actions/spelling/expect.txt and unrecognized words (1)
Consider adding them using (in with:
extra_dictionaries:
cspell:cpp/src/cpp.txt
cspell:win32/src/win32.txt
cspell:python/src/python/python-lib.txt
cspell:php/php.txt
cspell:python/src/common/extra.txt
cspell:java/java.txt
cspell:python/src/python/python.txt
cspell:npm/npm.txt
cspell:golang/go.txt
cspell:dotnet/dotnet.txt To stop checking additional dictionaries, add: with:
check_extra_dictionaries: '' Warnings (1)See the 📂 files view or the 📜action log for details.
See ℹ️ Event descriptions for more information. If the flagged items are 🤯 false positivesIf items relate to a ...
|
|
||
## Solution Design | ||
|
||
The new user experience will expand on the existing WinGet Settings / WinGet Settings Export commands. No changes will be made to the existing user experience. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The winget settings export
command already exists, but only prints the admin settings and the path to the user settings file. Based on the description below, would this behavior need to change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The approach I was thinking about with this was that if the user runs winget settings export
then the existing experience would be maintained. If they provide --Path
as a parameter, then we would create a file with the settings in it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, makes sense
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rather focus on the DSC v3 "export" verb for this scenario. The Microsoft.WinGet.DSC resource already allows setting both user and administrative settings.
|
||
## Abstract | ||
|
||
The Windows Package Manager client does not have an automatable approach for the application of user settings. Each time I setup a Windows Sandbox, or new Virtual Machine I need to add my unique sources (`winget source add -t "Microsoft.REST" -a "https://winget.com/api" -n "REST"`), then to enable the desired user experiences I must run `winget settings` select a text editor, then either manually type in my configuration settings or copy them from another device. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is an interesting statement, since sources aren't part of the winget settings
file.
I read this more as "There should be a way for me to export my current winget configuration - including all user settings, sources, pins, etc. . .", is that accurate? In which case, I would imagine the preferred path would be to export as a configuration file that winget can use with winget configure
to apply the appropriate settings?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The scenario that I am looking to resolve is: I can automate the configuration of all Winget configurable settings.
WinGet Source can be Winget source add
, after this change, a user could run WinGet Settings import
to apply settings. Pinning was not taken into account....
Speaking with Demitrius, it appears that the WinGet DSC will solve the issue I was attempting to solve with a new sub-command.. |
I've added some comments to |
@RDMacLachlan whats the latest update on this? |
Microsoft Reviewers: Open in CodeFlow